在JavaScript中,
之间有什么区别var x = Object();
和
var x = new Object();
答案 0 :(得分:9)
这是直接从ECMAScript specification:
中提取的当Object作为函数而不是构造函数调用时,它会执行类型转换。
当调用Object函数时没有参数或具有一个参数值时,以下步骤为 采取:
如果value为null,则为undefined或未定义 提供,创建和返回一个新的 对象对象完全如同 标准内置对象 构造函数已被调用 相同的论点(15.2.2.1)。
简而言之: new Object([ value ])
返回ToObject(值)。
[] 是将参数标记为可选的常用方法。
ToObject 是一个非常简单的操作,在第9.9节中定义。