在jquery中从4个不同数组的值创建一个新数组

时间:2017-01-13 23:29:41

标签: javascript

我有4个不同的数组

arr1 = ["a", "b", "c", "d"];
arr2 = ["1", "2", "3", "4"];
arr3 = ["a1", "b2", "c3", "d4"];
arr4 = ["aa", "bb", "cc", "dd"];

我需要创建一个新数组,如下所示:

new_array = ["a", "1", "a1", "aa"];

我不是故意只解决第一个值,我的意思是创建具有所有值的新数组...对不起,如果我把你们全部弄糊涂了..

解决方案

var arr1 = ["a", "b", "c", "d"];
var arr2 = ["1", "2", "3", "4"];
var arr3 = ["a1", "b2", "c3", "d4"];
var arr4 = ["aa", "bb", "cc", "dd"];
var new_array =[];
i=0;
$.each(arr1, function(i, item){
    new_array.push([arr1[i], arr2[i], arr3[i], arr4[i]]);
    i++;
 });

console.log(new_array);

3 个答案:

答案 0 :(得分:2)

new_array = [ arr1[0],arr2[0],arr3[0],arr4[0] ]

答案 1 :(得分:2)

您可以使用map



var arr1 = ["a", "b", "c", "d"];
var arr2 = ["1", "2", "3", "4"];
var arr3 = ["a1", "b2", "c3", "d4"];
var arr4 = ["aa", "bb", "cc", "dd"];

var result = [arr1, arr2, arr3, arr4].map(a => a[0]);

console.log(result);




答案 2 :(得分:0)

还有一个,只是为了多样性...... :)。



var arr1 = ["a", "b", "c", "d"];
var arr2 = ["1", "2", "3", "4"];
var arr3 = ["a1", "b2", "c3", "d4"];
var arr4 = ["aa", "bb", "cc", "dd"];

var new_arr = arr1.concat(arr2,arr3,arr4).filter(function(val,i) {
return i%4==0;
});

console.log(new_arr);