你可能不知道的JavaScript的new Function()方法 |
我们大多数人都使用过JavaScript,近年来随着各种JavaScript框架的流行使得JavaScript变得更加神奇和容易 。"Anonymous (匿名)函数?不知道那是什么但是看起来和自己所写的差不多 。” 下面是 new Function 的基本用法: 复制代码 代码如下: // 最后一个参数是函数的 body(函数体),类型为 string; // 前面的参数都是 索要构造的函数的参数(名字) var myFunction = new Function(users, salary, return users * salary); 非常简单,对吧? 问题是:什么时候适合使用这种方式,而不使用传统的函数声明 function myFnName() 和/或 匿名函数定义? Andrea Giammarchi 认为,最适合使用 这种函数定义方式的场景是在NodeJS和浏览器的全局环境中: 复制代码 代码如下: (function(win) { // 在全局环境中执行某些操作 })(Function(return this)()); 如果你曾经使用过 new Function模式,欢迎留言和讨论! |