合并两个数组以使值交替
我正在寻找一个jQuery方法来合并两个数组,以便它们的值交替:
var array1 = [1,2,3,4,5]; var array2 = ['a', 'b', 'c', 'd', 'e'];
我想要的结果是:
var arrayCombined = [1, 'a', 2, 'b', 3, 'c', 4, 'd', 5, 'e'];
请注意,我知道在JS中执行此操作是微不足道的,但我是在执行此操作的jQuery方法之后。
您可以使用map
方法:
var array1 = [1, 2, 3, 4, 5]; var array2 = ['a', 'b', 'c', 'd', 'e']; var arrayCombined = $.map(array1, function(v, i) { return [v, array2[i]]; }); console.log(arrayCombined);
如果必须使用jQuery,则可以利用其破坏的$.map
实现。
var result = $.map(array1, function(v, i) { return [v, array2[i]]; });
jQuery的$.map
平返回的数组,为您提供所需的结果。
演示: http : //jsfiddle.net/8rn2w/
纯JS解决方案:
var result = array1.reduce(function(arr, v, i) { return arr.concat(v, array2[i]); }, []);
演示: http : //jsfiddle.net/8rn2w/1/
尝试这样的事情: –
function merge(array1, array2) { if (array1.length == array2.length) { var c = []; for (var i = 0; i < array1.length; i++) { c.push([array1[i], array2[i]]); } return c; } return null;
}