新foo()和foo()之间有区别吗?

时间:2014-04-29 19:53:07

标签: javascript new-operator

在Javascript中,调用new foo()foo()之间有什么区别吗?

在其他语言中,new关键字是必需的,但在Javascript中,由于Objects是通过函数作为构造函数创建的,因此new关键字既不是必需的,也不应该是有益的。

例如:

function foo(){ 
    return { a:2, b:3, hello: 'world' }
}

如果我致电new foo(),则会返回与foo()相同的结果。

我知道最新的ECMAscript规范有可能需要new关键字的类,但我真的只关心函数对象构造函数。

0 个答案:

没有答案