欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

合并多个数组的四种方法

最编程 2024-04-26 14:41:02
...

使用concat合并

var num1 = [1, 2, 3], num2 = [4, 5, 6], num3 = [7, 8, 9];
var nums1 = num1.concat(num2, num3);
console.log(nums1); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

使用扩展操作符合并

var num4 = [1, 2, 3], num5 = [4, 5, 6], num6 = [7, 8, 9];
var nums2 = [...num4, ...num5, ...num6]
console.log(nums2); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

使用push合并

var num4 = [1, 2, 3], num5 = [4, 5, 6], num6 = [7, 8, 9];
for (const key of num5) {
    num4.push(num5[key])
}
for (const key of num6) {
    num4.push(num6[key])
}
console.log(nums4); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

使用push和扩展操作符

var target = [1, 2, 3], source1 = [4, 5, 6], source2 = [7, 8, 9];
target.push(...source1);
target.push(...source2);
console.log(target); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

使用Object.assign(),不可用

var target = [1, 2, 3], source1 = [4, 5, 6], source2 = [7, 8, 9];
Object.assign(target, source1, source2);
console.log(target); // [7, 8, 9]

上面代码中,Object.assign把数组视为属性名为 0、1、2 的对象,因此覆盖后,结果仍为[7,8,9]