在JavaScript中动态创建具有默认参数的函数

转到0

ECMAScript 6引入的功能之一是能够指示JavaScript中未指定参数的默认值,例如

function foo(a = 2, b = 3) {
    return a * b;
}

console.log(foo());   // 6
console.log(foo(5));  // 15

现在,我想知道是否也可以对使用Function构造函数动态创建的函数使用默认参数,如下所示:

new Function('a = 2', 'b = 3', 'return a * b;');

Firefox 39似乎已经支持默认参数(请参阅此处),但是上面的行由于语法错误而被拒绝。

贝吉

现在我想知道是否也可以对使用Function构造函数动态创建的函数使用默认参数

是的,根据规范,这是可能的。将参数自变量串联在一起,然后根据产生的结果进行分析FormalParameters,包括默认值。

Firefox 39似乎已经支持默认参数,但是上面的行由于语法错误而被拒绝。

好吧,那是一个bug :-)(可能是这个bug
您应该可以使用来解决它

var fn = Function('return function(a = 2, b = 3) { return a * b; }')();

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

具有多个参数的函数中的Javascript默认参数

具有函数参数的JavaScript动态命名。

在 JavaScript 中创建一个具有默认值的动态选择列表

JavaScript中带有动态参数的函数

如何在Javascript中动态创建的函数中传递参数?

如何在Python中的非默认参数之前声明具有默认参数的函数?

具有默认参数的可行函数

具有默认参数的PHP调用函数

具有默认参数的Unity构造函数

具有默认参数的函数对象的SFINAE

在Postgresql中创建具有多个列作为参数的函数

JavaScript 中具有默认值的参数在非默认参数之前

如何在R函数中具有不同数量的具有默认值的参数?

具有动态参数的Oracle Lag函数

具有动态日期参数的SQL函数

具有多个参数的动态调用函数

具有额外分配的Javascript默认参数

将动态参数添加到具有参数的函数中,该参数作为参数传递给当前函数

存在具有默认参数的构造函数时,c ++构造函数中的歧义

使用ast创建具有仅关键字参数且具有默认值的函数

从JavaScript中的对象调用具有正确参数的函数

我能否获得对Kotlin中具有默认参数的函数的函数引用作为无参数函数?

在方法/函数参数中动态创建对象

enable_if是否添加具有默认参数的函数参数?

具有动态参数/参数数量的匿名函数

具有键值对的javascript动态数组创建

JavaScript函数中的默认参数值

Scala:如何在部分函数中定义具有默认值的参数

在JS中调用函数时省略/跳过具有默认值的参数