Javascript数组字符串

时间:2012-05-11 09:23:59

标签: javascript arrays string

所以我在这里遇到了奇怪的问题。我有一个数组status=new Array()。然后我从0迭代到N-1,并指定status[i]="idle";我尝试做警报以检查值,并将它们全部分配给字符彗差,。谁知道什么是错的?

var status=new Array();
window.onload = function() {
    for(var i=0;i<5;i++) {
        status[i]="idle";
        alert(status[i]);
    }
}

1 个答案:

答案 0 :(得分:7)

使用不同的变量名称(或者更好的是,根本不使用全局变量)。已经有一个window.status property了,显然有些事情不会让你用你自己的阴影(这让我感到惊讶;我想知道数组是否被赋予了一个字符串或者某种东西)。在全局范围内,var会在window对象上创建属性,这就是window.status相关的原因。

This examplesource)会复制您的问题(对我而言,使用Chrome),只有更改名称的this examplesource)会显示正确的警报系列

请注意,这是特定于浏览器的。在Firefox上,即使您的旧代码也会向我显示正确的警报系列。例如,Firefox允许我们重新定义window.status,但Chrome不是。