const merge1 = arr => { // 合并多个数组
const result = []
for (let i = 0; i < arr.length; i++) {
for (let j = 0; j < arr[i].length; j++) {
result.push(arr[i][j])
}
}
return result
}
const merge2 = arr => {
const result = [];
for (let i = 0; i < arr.length; i++) {
result = result.concat(arr[i]);
}
return result;
}
const merge3 = arr => { return Array.prototype.concat.apply([], arr); }
function merge4 (arr) { return [].concat.apply([],arr); }
function merge5(arr) { return [].concat(...arr) }
function merge6(arr) {
arr = Array.prototype.concat.apply([], arr);
return arr.some(Array.isArray) ? merge6(arr) : arr;
}
function merge7 (arr) {
var isArray = Object.prototype.toString.call(arr) === '[object Array]';
if (isArray && arr.length > 0) {
var head = arr[0]; var tail = arr.slice(1);
return merge7(head).concat(merge7(tail));
} else {
return [].concat(arr);
}
}
转载至https://www.w3cplus.com/javascript/merge-flatten-an-array-of-arrays-in-javascript.html