①let func = new Function ( [ arg1, arg2, ...argN], functionBody),最后一个参数一定是函数体,其余参数都作为传给函数体的参数;
②日常开发直接使用 function 或者 () => {} 箭头函数写法就好了;
③作用 1:非合法 JSON 对象字符串合法化:JSON.stringify (new Function ('return ' + str)());
④作用 2:模板字符串作为模板:可以扩展字符串方法,无需第三方实现模板渲染效果;
⑤作用 3:闭包与上下文:new Function 主体参数中的变量的上下文是全局的,而不是私有的,没有所谓的闭包;
(参考:www.zhangxinxu.com/wordpress/2…