如何从数组中提取值

How to extract value from an array of array

本文关键字:提取 数组      更新时间:2023-09-26

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

例如,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] + '<br />');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

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 个数组中的哪一个