使用遞歸: map、reducefunction flatten(arr) { var res = [];
arr.map(item => {
res = Array.isArray(item) ? res.concat(flatten(item)) : res.push(item);
}); return res;
}function flatten(arr) {
return arr.reduce((result, item)=> { return result.concat(Array.isArray(item) ? flatten(item) : item);
}, []);
}循環,一層一層剝開function flatten(arr) { while(arr.some(item=>Array.isArray(item))) {
arr = [].concat(...arr);
} return arr;
}黑科技:join、toStringfunction flatten(arr) { return arr.join(',').split(',').map(function(item) { return parseInt(item);
})
}function flatten(arr) { return arr.toString().split(',').map(function(item) { return Number(item);
})
}上邊這兩個代碼塊表示自己也看不懂,大佬能幫忙解釋一下嗎?
使用javascript 扁平化數組---5種方法
千巷貓影
2018-07-11 14:30:23