我是一位采访者问的,以下代码之间是否存在差异:
var o1 = {
a: 1,
b: 2,
c: 3
}
for( var p in o1) {
// ...
}
VS
var o2 = new Object()
o2.a = 1;
o2.b = 2;
o2.c = 3;
for( var p in o2) {
// ...
}
我无法想到任何差异,有没有?
答案 0 :(得分:1)
假设new Object()
行中遗漏的分号是无意的,那么没有区别......
http://www.w3schools.com/js/js_object_definition.asp
...除了第一个 - 根据此评论 - 执行得更快。
上面两个例子完全相同。无需使用新的Object()。 为简单起见,可读性和执行速度,请使用第一个(对象文字方法)。