Class()
和new Class
、new Class()
有什么不同?我做了一个测试,后者似乎更快。
http://jsperf.com/object-initilzation
我读到没有区别,但似乎是有区别的。
发布于 2012-12-29 18:47:44
Class()
调用函数。不要在构造函数上使用它。
new Class
和new Class()
它们之间没有区别,它们都实例化了一个类的新实例。如果没有传递参数并且使用了new
关键字,则括号是可选的。
发布于 2012-12-29 18:41:04
Class()
是构造函数的误用。当您像这样调用它时,它有一个全局作用域作为上下文对象,并且它不会创建Class的新实例。我猜想,new Class
和new Class()
之间的主要区别在于某些参数优化,这些参数被某些javascript引擎使用
发布于 2013-01-22 04:11:43
如果你有一个这样的类:
function Test(propVal){
this.prop = propVal;
}
您将获得以下结果:
测试调用()这将返回“未定义”,因为测试是作为构造函数工作的
调用new Test(5)您将获得一个新的测试实例,该实例的"prop“将设置为5
调用新的测试您将获得一个新的测试实例,并且该实例的"prop“将设置为未定义
我希望这对你有所帮助。
谢谢,
https://stackoverflow.com/questions/14080448
复制相似问题