函数构造函数和eval

时间:2011-10-28 22:26:10

标签: jquery

jQuery 1.7rc1的第576行是:

return (new Function( "return " + data ))();

现在jshint抱怨警告

  

Function构造函数是eval。

这个错误是什么意思?为什么jQuery人会按照它的方式编写这行?

1 个答案:

答案 0 :(得分:4)

由于eval is evilFunction构造函数使用eval来创建新的Function,因此jshint不喜欢它。 JQuery正在使用它来解析原本不支持JSON.parse()的旧浏览器的JSON。