我目前正在开发JavaScript解析器,并研究ECMAScript 5.1 specification。这是一个使我感到困惑的问题。
§ 11.2左侧表达式定义了以下NewExpression
的产生:
NewExpression :
MemberExpression
new NewExpression
如果我没有看错,那么
NewExpression
可能类似于new new Something
(实际上,任何数量的
new
。)这完全使我感到困惑。
new Something
如何潜在地返回您可以再次使用new
的任何内容?有可能吗? 最佳答案
根本不常见,但有可能。返回函数的函数:
function baz(){}
function foo(){return baz}
new new foo() instanceof baz // true