无法在javascript中访问二维数组中的第二个字段

时间:2013-12-14 01:04:47

标签: javascript arrays

我有一个2维数组定义为

          var thischart = [[],[]];

并且数组包含以编程方式创建的以下数据:

    1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,24,14,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0

我无法获得特定阵列单元格中第二个字段的单个值。例如,如果我使用以下命令来获取值:          alert(“thischart [i,1] =”+ thischart [0,1]);

我得到以下答案:

       thischart[i,1]=2,0

我尝试使用第二维来访问数据

       thischart[0][1]);

但是它给了我一条错误消息:

我只想获得数组中的第二个单值,例如数组单元格13,我希望从上面得到值24。有没有人对如何访问这个数组有答案?

我按如下方式填充数组,然后通过程序逻辑更新它:

       $hours = [];
    for($i = 0; $i< 24; $i++){
      $hours[$i] = [];
      $hours[$i][0] = ($i + 1);
      $hours[$i][1] = "0";

    }

这个问题的答案如下:

  for(var i in thischart){
     var tc = thischart[i];
      myvalue = tc[1]);   // this is the value I want

  }

感谢所有回复的人。

4 个答案:

答案 0 :(得分:0)

对于他们所有人都这样:

for(var i in thischart){
  var tc = thischart[i];
  for(var n in tc){
    // n is internal index
    // tc[n] is internal value
  }
}

对于第一个内部数组中的单个值,第二个值为:

thischart[0][1];

答案 1 :(得分:0)

为什么不使用控制台查看

的返回内容
thischart[0];

因为它应该包含一个数组。如果是,那么

thischart[0][1];

是完全有效的语法。如果没有,那么

thischart[0,1]

没有任何意义。

答案 2 :(得分:0)

做这样的事情:

var items = [[1,2],[3,4],[5,6]];
alert(items[0][0]); // 1

答案 3 :(得分:-1)

你的意思是这样的:......

http://jsfiddle.net/DSrcz/1/

var arr = [1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0];
arr[33]=1000;
alert(arr[13]);
alert(arr[33]);