我在JavaScript中创建一个非常基本的对象,并通过其属性进行循环,显示属性名称:
var name = {
'A': 'DataA',
'B': 'DataB',
'C': 'DataC',
'D': 'DataD',
'E': 'DataE'
}
for (var propName in name) {
document.getElementById('result').innerHTML += propName + ' '
}
在IE和FireFox中,它会产生预期的结果:
A B C D E
但在Chrome中,相同的代码会生成
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
知道为什么吗?关键字name
在Chrome中是否具有重要意义?
答案 0 :(得分:4)
当您将Chrome用作全局变量时,Chrome似乎不喜欢它(窗口对象上也有名称属性)。只需在函数内运行它。
答案 1 :(得分:-5)
尝试
for (var propName in name) {
document.getElementById('result').innerHTML += (propName + ' ');
}