第一种
- 依次把每一项添加进新数组
- 如果为非数组,直接添加
- 如果为数组,则添加递归操作的结果
function flatten(arr) {
let result = [];
for (let i = 0; i < arr.length; i++) {
const r = arr[i];
result = result.concat(Array.isArray(r) ? arguments.callee(r) : r)
}
return result
}