有什么理由吗
eval("(function(x){return x*x;})")
不使用 IE9 返回函数?
最佳答案
这是 JScript 解析器中的一个错误。它不应该在 IE9 中发生,除非您处于兼容或怪癖模式。
IE8 将您的函数表达式误解为函数声明,导致它无法返回任何内容。之前在 this question 中提到过.
您可以使用其他典型方法之一解决它,以消除 JScript 解析器对什么构成表达式与语句的混淆,例如:
eval('[function(x){return x*x;}][0]')
eval('0?0:function(x){return x*x;}')
关于javascript - IE9 javascript eval() 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6807649/