JavaScript - 对象创建与更新

时间:2014-12-10 11:47:44

标签: javascript performance object

在JavaScript中:

示例1:

var x = {}; x.a = 10;

示例2:

var x = {}; x = {a: 10};

示例1和示例之间是否有任何区别2基于性能,考虑到需要将大量属性附加到var x,而不仅仅是a

哪个更有效?

1 个答案:

答案 0 :(得分:6)

选择选项3:

var x = {
    a: 10,
    b: 20,
    // etc
};

不要将x声明为空对象,只能将其替换为具有a属性的对象。

当您需要在对象上设置大量属性时,使用像这样的对象文字比分别添加每个属性更有效。但是,差异可以忽略不计。

选项#1的缺点是:
每个要添加到对象的属性的1个操作,当需要更大量的属性时会产生效果。

选项#2的缺点是:
您正在声明该对象,然后完全替换

我的建议只需一次性将所有必需的属性添加到对象中,而无需替换变量。