【发布时间】:2015-01-21 00:47:39
【问题描述】:
我们都知道在没有“new”关键字的情况下调用 JavaScript 构造函数是不好的。 那么为什么会这样:
Function("a", "b", "return a + b")(1, 1); // returns "2"
返回与此相同的值?:
new Function("a", "b", "return a + b")(1, 1); // Also returns "2"
在这种情况下省略“新”关键字有什么坏处(或好处)吗?
【问题讨论】:
-
@Qantas94Heavy 这不是重复的,因为链接问题中没有提到
Function构造函数。 -
@Qantas94Heavy 不,我对保持这个问题的开放没有既得利益。我可以立即结束这个问题。但是,我确实相信这确实是一个新问题,因为它解决了链接问题没有解决的问题。对于在 StackOverflow 上寻找答案的人来说,没有什么比必须遵循重复链接然后发现他们必须自己推断答案更烦人的了。只要是新的就可以有重复:blog.stackoverflow.com/2010/11/…
标签: javascript function oop constructor new-operator