我发现了我的代码中的一个错误,希望能够通过最小化重构工作来解决。这个错误发生在Chrome和Opera浏览器中。
var obj = {23:"AA",12:"BB"};
//iterating through obj's properties
for(i in obj)
document.write("Key: "+i +" "+"Value: "+obj[i]);
在FF和IE中输出
键:23 值:AA
键:12 值:BB
在Opera和Chrome中输出(错误)
键:12 值:BB
键:23 值:AA
我尝试创建一个反向排序的对象,如下所示
var obj1={"AA":23,"BB":12};
for(i in obj1)
document.write("Key: "+obj[i] +" "+"Value: "+i);
但是输出结果都相同。有没有办法在做出小改动的情况下,让所有浏览器都表现出相同的行为?
'23'
,以明确对象属性始终为字符串,但两种方式都是有效的。 - bobince