如何从数组数组中提取值

我有一个数组存储。 我需要从这个数组中提取特定的值。

例如,allarray包含数组列表allarray = [Array [3],Array [3],Array [3]]是存在于其中的三个数组。

0:数组[3] 0:“a1”1:“b1”2:“c1”

1:数组[3] 0:“a2”1:“b2”2:“c2”

3:数组[3] 0:“a3”1:“b3”2:“c3”

我需要从上面的数组中提取这个c1,c2和c3并显示在警告框中。

谁能告诉我怎么做到这一点?

我试过$ .each但不幸的是不起作用。 有人可以吗?

如果我理解正确,你的数组看起来像这样

 var allarray = [["a1","b1","c1"],["a2","b2","c2"],["a3","b3","c3"]]; 

要获得c1,c2和c3,你可以这样做

  var c1 = allarray[0][2], c2 = allarray[1][2], c3 = allarray[2][2]; 

或者你可以做一个循环将所有的cs放在一个自己的单个数组中

 var cs = []; for(var i = 0; i < allarray.length; i++) { cs.push(allarray[i][2]); } 

这就是Array.prototype.map函数的用途:

 var arr = [["a1","b1","c1"],["a2","b2","c2"],["a3","b3","c3"]]; var theValues = arr.map(function(inner) {return inner[2]}); alert(theValues.join(', ')); 

可以尝试使用map() 。 例:

 var allarray = [["a1","b1","c1"],["a2","b2","c2"],["a3","b3","c3"]], index = 2; allarray.map(function(val, ind){ document.write(allarray[ind][index] + '
'); });
  
 var allarray = [ ["a1", "b1", "c1"], ["a2", "b2", "c2"], ["a3", "b3", "c3"] ], num = 2; //one by one allarray.forEach(function( arr ) { alert( arr[ num ] ); }); //or all at once alert( allarray.map(function( arr ) { return arr[ num ]; }).join(',') ); 
 var arrOfArr=[['a1','b1','c1'],['a2','b2','c2'],['a3','b3','c3']]; var cVals=arrOfArr.map(function(element,index){ return arrOfArr[index][2]; }); alert(cVals); 

http://jsfiddle.net/3uaugbem/

您可以通过运行来访问它

 allarray[X][2] 

其中X为0,1或2,具体取决于您想要的3个arrays中的哪一个