代码之家  ›  专栏  ›  技术社区  ›  tinkerr

简单的javascript数组初始化在chrome中不工作

  •  7
  • tinkerr  · 技术社区  · 14 年前

    我正在尝试做一些非常简单的事情——用JavaScript初始化一个数组。而且它在谷歌Chrome中不起作用。代码如下:

    status = [];
    for(i=0; i < 8; i++)
      status[i]=false;
    
    alert(status.length); //It says 0 when it should say 8
    

    给出了什么?

    2 回复  |  直到 14 年前
        1
  •  11
  •   Christian C. Salvadó    14 年前

    你的任务 status 变量,与 window.status 财产。

    Chrome只是拒绝执行任务。

    这个 窗口状态 属性,设置或获取浏览器底部状态栏中的文本。

    我建议您要么重命名变量,要么使用匿名函数创建一个新的作用域,还要记住 总是 使用 var 对于声明变量:

    (function () {
      var status = [];
    
      for (var i = 0; i < 8; i++)
        status[i] = false;
    
      alert(status.length);
    })();
    
        2
  •  6
  •   Chubas    14 年前

    更改变量名。像是地位 is a property of window 铬使它变为易变的 . 我也没想到。