【发布时间】:2015-09-01 15:59:04
【问题描述】:
我创建了以下函数来展平嵌套数组:
function steamroller(arr) {
arr = arr.reduce(function(a, b, i){
return a.concat(b);
},[]);
if (!Array.isArray(arr[arr.length-1])) {console.log(arr); return arr;}
steamroller(arr);
}
steamroller([1, [2], [3, [[4]]]]);
代码会将一个很好地展平的数组记录到控制台,但函数返回“未定义”。
我被难住了——这是为什么?!
【问题讨论】:
标签: javascript arrays function recursion