【问题标题】:Are the following statements in javascript equivalent? [duplicate]javascript中的以下语句是否等效? [复制]
【发布时间】:2011-10-31 05:55:20
【问题描述】:

可能的重复:
Is there a reason not to use new Object() in JavasScript?
Create an empty object in JavaScript with {} or new Object()?

在javascript中,以下两个语句是否等价?

var c = new Object();

var c = {};

【问题讨论】:

  • 是的!不过,后者是首选。
  • 警告new Array()[]不一样
  • @Pablo Fernandez:它们有何不同?如果你指的是Array()的构造函数的参数列表,那是不相关的。
  • 是的,我指的是 args。这是不同的,也是相关的。

标签: javascript


【解决方案1】:

是的。从 §11.1.5 对象初始化器:

产生式 ObjectLiteral : { } 评估如下:

返回一个新对象,就像由表达式 new Object() 创建的一样,其中 Object 是具有该名称的标准内置构造函数。

【讨论】:

  • 你知道这完全是一个骗局,你为什么回答它?
猜你喜欢
  • 1970-01-01
  • 2012-12-01
  • 2017-04-04
  • 2014-10-01
  • 2013-09-08
  • 2019-02-12
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
相关资源
最近更新 更多