0

一連の配列から最初の値を返すにはどうすればよいですか?

var arr = [
    ['2009', 1000, 400, 800],
    ['2010', 1170, 460, 1200],
    ['2011', 660, 1120, 500],
    ['2012', 1030, 540, 800]
], res, i, a, b, c, d, e;

!function doMerge() {
    for(i = 0; i < arr.length; i++) {
        res = arr[i];       
        console.log(res.splice(1));
    }    
}(arr)

// get rid of years
// prints    
[1000, 400, 800] 
[1170, 460, 1200] 
[660, 1120, 500] 
[1030, 540, 800] 

これらの値の最初の配列を作成しようとしています[1000, 1170, 660, 1030]

4

3 に答える 3

1
res = [];

function doMerge() {
    for(i = 0; i < arr.length; i++) {
        res.push(arr[i][1]);       
    }    
}

doMerge();

console.log(res);

出力[ 1000, 1170, 660, 1030 ]

于 2013-02-14T01:52:30.890 に答える
1
var arr = [
    ['2009', 1000, 400, 800],
    ['2010', 1170, 460, 1200],
    ['2011', 660, 1120, 500],
    ['2012', 1030, 540, 800]
];

var newArr = [];

for (var x = 0; x < arr.length; x++){
  newArr.push(arr[x][1]);
}

console.log(newArr);

Here is a solution.

http://jsfiddle.net/wcVZH/

于 2013-02-14T01:54:04.273 に答える
0

forまたはwhileループが必要ない場合は、これを1行で実行できますArray.prototype.map

var myArr = arr.map(function (a) {return a[1];});
于 2013-02-14T01:56:24.460 に答える