在JavaScript中组合两个数组
我可以像这样在JavaScript中合并两个数组吗?
这些数组:
arr1 = ['one','two','three']; arr2 = [1,2,3];
成
arr3 = ['one': 1, 'two': 2, 'three' : 3]
var arr3 = {}; for (var i = 0; i < arr1.length; i++) { arr3[arr1[i]] = arr2[i]; }
请注意, arr3
不是数组,它是对象 。
你可以使用Array.prototype.reduce
…
var arr3 = arr1.reduce(function(obj, val, i) { obj[val] = arr2[i]; return obj; }, {});
演示: http : //jsfiddle.net/GMxcM/
{ "one": 1, "two": 2, "three": 3 }
只是因为你in jQuery
说过,这里是一个jQuery $.each
版本。
arr1 = ['one','two','three']; arr2 = [1,2,3]; arr3 = {}; $.each(arr1, function(i, value){ arr3[value] = arr2[i]; }); console.log(JSON.stringify(arr3));
输出 – >
{"one":1,"two":2,"three":3}
这是一个有效的jsFiddle
环!
var arr1 = ['one','two','three']; var arr2 = [1,2,3]; var result = {}; for(var i = 0; i < arr1.length; i++) { result[arr1[i]] = arr2[i]; }
更容易:
$.merge(arr1, arr2);