js 循环多个数组合并
时间: 2023-11-22 09:48:52 浏览: 48
以下是JS循环多个数组合并的两种方法:
1.使用for循环遍历多个数组,将每个数组中的元素添加到一个新数组中,最后返回新数组。具体实现如下:
```javascript
function mergeArrays() {
var result = [];
for (var i = 0; i < arguments.length; i++) {
var arr = arguments[i];
for (var j = 0; j < arr.length; j++) {
if (result.indexOf(arr[j]) === -1) {
result.push(arr[j]);
}
}
}
return result;
}
```
2.使用ES6的扩展运算符(...)和Set对象去重,将多个数组合并成一个数组,然后使用Set对象去重,最后将去重后的结果转换为数组返回。具体实现如下:
```javascript
function mergeArrays(...arrays) {
return [...new Set([].concat(...arrays))];
}
```
相关问题
js 循环合并多个数组
以下是两种JS循环合并多个数组的方法:
1.使用for循环遍历多个数组,将每个数组中的元素添加到一个新数组中,并使用Set去重。
```javascript
let arr1 = [1, 2, 3];
let arr2 = [2, 3, 4];
let arr3 = [3, 4, 5];
let result = [];
for (let i = 0; i < arr1.length; i++) {
if (!result.includes(arr1[i])) {
result.push(arr1[i]);
}
}
for (let i = 0; i < arr2.length; i++) {
if (!result.includes(arr2[i])) {
result.push(arr2[i]);
}
}
for (let i = 0; i < arr3.length; i++) {
if (!result.includes(arr3[i])) {
result.push(arr3[i]);
}
}
console.log(result); // 输出:[1, 2, 3, 4, 5]
```
2.使用concat()方法将多个数组合并成一个数组,然后使用Set去重。
```javascript
let arr1 = [1, 2, 3];
let arr2 = [2, 3, 4];
let arr3 = [3, 4, 5];
let result = Array.from(new Set(arr1.concat(arr2, arr3)));
console.log(result); // 输出:[1, 2, 3, 4, 5]
```
node 多个数组合并
根据引用[1]中给出的函数接口,可以设计一个算法来实现多个有序数组的合并。首先,我们可以创建一个新的数组来存储合并后的结果。然后,我们可以使用循环来遍历每个有序数组,并将它们的元素逐个添加到新数组中。最后,我们可以返回合并后的数组作为结果。
以下是一个示例的实现代码:
```javascript
function mergeArrays(arrays) {
let mergedArray = [];
let returnSize = 0;
for (let i = 0; i < arrays.length; i++) {
for (let j = 0; j < arrays[i].length; j++) {
mergedArray.push(arrays[i][j]);
returnSize++;
}
}
return { mergedArray, returnSize };
}
// 示例输入
let arrays = [[1,2,3,4,5],[6,7],[8,9,10],[11,12,13,14]];
// 调用函数进行合并
let result = mergeArrays(arrays);
// 输出合并后的数组
console.log(result.mergedArray);
```
运行以上代码,将会输出合并后的数组:[1,2,3,4,5,6,7,8,9,10,11,12,13,14]。这个算法可以将多个有序数组合并成一个有序数组。