参数包含函数中的表达式
Arguments contains expressions in functions?
我是JS的新手。现在我在一本书中读到了这段代码。
var sayMessage = new Function("message", "console.log(message);");
我的问题是{}
在这个函数中的位置。我的意思是,我们怎么写message", "console.log(message);
,这里需要一个参数?谢谢。
JavaScript Function
构造函数可用于从字符串定义函数。构造函数将最后一个参数传递的字符串作为函数体求值。
用Function构造函数创建的Function对象在创建函数时被解析。这比用函数表达式或函数语句声明函数并在代码中调用它效率低,因为这些函数是与其余代码一起解析的。
从文档。
意思是:
var sayMessage = new Function("message", "console.log(message);");
将被计算为这个表达式:
var sayMessage = function (message) {
console.log(message);
};
您可以看到参数message
和console.log(message)
是如何从一个映射到另一个的。
您首先想要这样做的原因很少,而且在惯用的JavaScript中很少看到。
相关文章:
- 调用正则表达式匹配的函数
- Javascript:应为赋值或函数调用,但实际看到的却是表达式
- 参数更改时,角度表达式中的函数不更新
- ES6是否引入了一种机制来生成块范围的函数语句(而不是表达式)
- 是否有任何Javascript函数从指定的索引中进行正则表达式匹配
- 能够在定义函数表达式之前使用它
- 函数表达式,返回回调函数
- JavaScript中的立即调用函数表达式(IIFE)-传递jQuery
- 函数声明与函数表达式之间的性能差异
- Javascript:JSHint:应为赋值或函数调用,但实际看到的却是表达式
- 立即调用函数表达式(IIFE)相对于普通函数的优势
- 如何通过jsp表达式标记将java字符串变量传递给javascript函数
- 用正则表达式在js中进行函数修剪
- 错误-应为赋值或函数调用,但实际看到的却是表达式
- Javascript错误正则表达式不是函数
- “期望赋值或函数调用,而是看到了表达式.” - 不必要的控制台.log
- 为过滤器创建javascript正则表达式函数
- 如何修复这个正则表达式函数
- 传递变量来替换正则表达式函数
- 正则表达式函数4个字母和4个数字