gpt4 book ai didi

javascript - 可以在运行时在 Javascript 中创建函数吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:49:43 26 4
gpt4 key购买 nike

维基百科关于一等公民的文章指出,“一些作者”认为如果语言 supports their creation at run-time 函数在语言中只是一等公民。 .这article詹姆斯·科格兰 (James Coglan) 所写的函数显然将函数称为一等公民——我不知道他是否知道关于一等标准的争议。

这是我的问题:

  1. 使用“在运行时创建”的附加标准,JavaScript 过程是一等公民吗?

值得一提的是,基于更通用的标准(适用于其他大型对象),JavaScript 函数显然是一等公民,即它们可以作为变量传递;因此,我觉得上面提到的标准为对话增加了一种有趣的动态 - 或者至少是一种澄清的动态 - 正如一位用户所写的那样 - “任意”

  1. 如果是这样,在运行时创建函数在 JavaScript 中是什么样的(这就是我们所说的 promise 、回调、匿名等)?
  2. 如果不是,那么在运行时用另一种语言创建函数会是什么样子?

最佳答案

可以使用 Function constructor 动态创建函数

var adder = new Function('a', 'b', 'return a + b');

adder(3, 4); // returns 7

更详细地说,这可用于应用任意二元运算符:

function make_binary_fun(operator) {
return new Function('a', 'b', 'return a ' + operator ' b');
}
var adder = make_binary_fun('+');
var multiplier = make_binary_fun('*');

关于javascript - 可以在运行时在 Javascript 中创建函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28464417/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com