将嵌套多层的数组,转为一层数组的方法叫做数组扁平化
方法一
function flatten(arr) {
var res = [];
for (var i = 0, len = arr.length; i < len; i++) {
if (Array.isArray(arr[i])) {
res =res.concat(flatten(arr[i]))
} else {
res.push(arr[i])
}
}
return res;
}
方法二
function flatten(arr){
var result = []
result = arr.toString().split(',').map(function(item){
return +item;
})
return result;
}
方法三
function flatten(arr) {
return arr.reduce(function (pre, item) {
// return pre.concat(item)
return pre.concat(Array.isArray(item) ? flatten(item) : item)
}, [])
}