首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Class()、new Class和new Class()的区别

Class()、new Class和new Class()的区别
EN

Stack Overflow用户
提问于 2012-12-29 17:41:05
回答 3查看 1.9K关注 0票数 4

Class()new Classnew Class()有什么不同?我做了一个测试,后者似乎更快。

http://jsperf.com/object-initilzation

我读到没有区别,但似乎是有区别的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-29 18:47:44

Class()

调用函数。不要在构造函数上使用它。

new Classnew Class()

它们之间没有区别,它们都实例化了一个类的新实例。如果没有传递参数并且使用了new关键字,则括号是可选的。

票数 3
EN

Stack Overflow用户

发布于 2012-12-29 18:41:04

Class()是构造函数的误用。当您像这样调用它时,它有一个全局作用域作为上下文对象,并且它不会创建Class的新实例。我猜想,new Classnew Class()之间的主要区别在于某些参数优化,这些参数被某些javascript引擎使用

票数 0
EN

Stack Overflow用户

发布于 2013-01-22 04:11:43

如果你有一个这样的类:

代码语言:javascript
运行
复制
function Test(propVal){
    this.prop = propVal;
}

您将获得以下结果:

测试调用()这将返回“未定义”,因为测试是作为构造函数工作的

调用new Test(5)您将获得一个新的测试实例,该实例的"prop“将设置为5

调用新的测试您将获得一个新的测试实例,并且该实例的"prop“将设置为未定义

我希望这对你有所帮助。

谢谢,

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14080448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档