2011-10-01 62 views
0

我已经知道了how to enumerate an object in javascript。我的问题是枚举时的关键序列是什么。是按A-Z还是按时间排序?在javascript中枚举对象时的关键顺序是什么?

代码

var a = { 
      "a":"" 
     ,"b":"" 
     ,"c":""}; 
for (var k in a) { 
    console.log(k); 
} 

输出

a,b,c 

代码

var a = { 
      "b":"" 
     ,"a":"" 
     ,"c":""}; 
for (var k in a) { 
    console.log(k); 
} 

输出

b,a,c 

代码

var a = { 
      "b":"" 
     ,"a":"" 
     ,"c":""}; 
a.d = ""; 
for (var k in a) { 
    console.log(k); 
} 

输出

b,a,c,d 
+1

你可以在这里找到更多关于它的信息http://stackoverflow.com/questions/280713/elements-order-in-a-for-in-loop/280861#280861 –

+0

@Narendra谢谢,这正是我想要的 – wukong

回答

4

通常的顺序是将其加入的时间,但对于for in循环says说明书:

的力学和顺序列举的属性的(第一算法中的步骤6.a,第二步中的步骤7.a)未被指定。

所以你不能真正依靠一个特定的顺序。

相关问题