Function 构造函数
用法
创建一个新的Function对象。 在 JavaScript 中, 每个函数实际上都是一个Function对象。
1 | var sum = new Function('a', 'b', 'return a + b'); |
语法
new Function ([arg1[, arg2[, …argN]],] functionBody)
参数
arg1, arg2, … argN
被函数使用的参数的名称必须是合法命名的。参数名称是一个有效的JavaScript标识符的字符串,或者一个用逗号分隔的有效字符串的列表;例如“×”,“theValue”,或“A,B”。
functionBody
一个含有包括函数定义的JavaScript语句的字符串。
使用Function构造器生成的Function对象是在函数创建时解析的。这比你使用函数声明或者函数表达式(function)并在你的代码中调用更为低效,因为使用后者创建的函数是跟其他代码一起解析的。
所有被传递到构造函数中的参数,都将被视为将被创建的函数的参数,并且是相同的标示符名称和传递顺序
神奇的🌰:
1 | function get(data, ...args) { |
注意
- Function构造器生成的函数,在全局作用域中被创建
- 大量修改DOM元素的递归快捷方式