我想在Javascript中合并两个数组,如下所示:
['First', 'Third', 'Fifth', 'Seventh', 'Ninth']
['Second', 'Fourth', 'Sixth', 'Eigth']
=> ['First', 'Second', 'Third', 'Fourth',...]
另外一个数组可以包含比另一个更多的元素。例如:
['E1', 'E2', 'E3']
['E4']
=> ['E1', 'E4', 'E2', 'E3']
最简单的方法是什么?
我真的不知道如何做到这一点。
注意:我有下划线可用。
答案 0 :(得分:5)
使用下划线:
var a1 = ['First', 'Third', 'Fifth', 'Seventh', 'Ninth'];
var a2 = ['Second', 'Fourth', 'Sixth', 'Eigth'];
var result = _.compact(_.flatten(_.zip(a1, a2)));
答案 1 :(得分:3)
a = ['First', 'Third', 'Fifth', 'Seventh', 'Ninth'];
b = ['Second', 'Fourth', 'Sixth', 'Eigth'];
c = [];
for (var i = 0; i < Math.max(a.length, b.length); i++) {
if (i < a.length) c.push(a[i]);
if (i < b.length) c.push(b[i]);
}