某些形式的间接eval
在 Opera 中失败,而且,我听说,在 Safari 中。
[eval][0]('')
未处理的错误:使用无效的此对象调用 eval
请注意,在评估空字符串时它会失败......据我所知,它应该 return undefined
。
其他形式,如(0,eval)('')
,似乎工作正常。
运行 kangax 的这个测试套件中的示例,我看到几个表单在 Opera 中失败并显示“invalid this object”消息,但在 Chrome 或 Firefox 中没有。
谁能解释为什么会这样?是什么决定了这种行为?这似乎是故意的,它是否符合我不知道的标准的某些部分?
相关——关于间接与直接评估的讨论。