我目前有两个数组
array1 = [5, 10, 20]
array2 = [10, 20, 30]
array3 或类似的东西:
array4 = [{"a":5, "b":10}, {"a":10, "b":20}, {"a":20, "b":30}]
我知道这可能是一个简单的问题,但我什至不确定 array3 会被称为什么,所以很难用谷歌搜索。
我目前有两个数组
array1 = [5, 10, 20]
array2 = [10, 20, 30]
array3 或类似的东西:
array4 = [{"a":5, "b":10}, {"a":10, "b":20}, {"a":20, "b":30}]
我知道这可能是一个简单的问题,但我什至不确定 array3 会被称为什么,所以很难用谷歌搜索。
非常简单,首先我们创建一个结果数组,然后我们遍历第一个数组并向其中添加元素。这是一个工作小提琴。
请注意,在您的代码中,您的符号{5,10}
在 JavaScript 中是非法的,我假设您的意思是一个数组。
var result = [];
for(var i=0;i<array1.length;i++){
result.push([array1[i],array2[i]]);
}
编辑后更新,好像你想要对象,试试
var result = [];
for(var i=0;i<array1.length;i++){
result.push({a:array1[i],b:array2[i]});//add object literal
}
如果您愿意,您还可以map
在功能上使用和编写相同的代码。这是那种实现的小提琴
这叫做zip
...
function zip() {
var args = [].slice.call(arguments);
var shortest = args.length==0 ? [] : args.reduce(function(a,b){
return a.length<b.length ? a : b
});
return shortest.map(function(_,i){
return args.map(function(array){return array[i]})
});
}
检查Underscore具有许多这些实用功能的奇妙 js 库...
你可以使用 ES6 的新特性轻松做到这一点
var array1 = [5, 10, 20];
var array2 = [10, 20, 30];
var combineArray = [...array1 , ...array2];
//output should be like this of combine array : [5, 10 ,20 ,10 ,20 ,30]
如果您想在两个数组中添加额外的项目,那么您可以使用以下方式执行此操作:
var combineArray = [...array1 ,333, ...array2];
//output should be like this of combine array : [5, 10 ,20 ,333 ,10 ,20 ,30]