【发布时间】:2017-07-20 05:54:41
【问题描述】:
我正在尝试展平嵌套数组,但我没有定义。我最近学习了reduce,并正在尝试应用相同的逻辑。
var list2 = [0, [1, [2, [3, [4, [5]]]]]];
function flat3(arr){
arr.reduce(function(result, val, index){
if(Array.isArray(val)){
result = result.concat(val);
flat3(val);
} else {
result.push(val);
}
return result;
}, []);
}
console.log(flat3(list2));
我不确定。为什么?我错过了什么?
【问题讨论】:
-
您收到
undefined是因为您没有为flat3返回arr.reduce -
@A.Lau 我不想使用 ES6 的 => 而我想先在 ES5 中理解它。你能帮我解决这个问题吗?
-
我不明白为什么我的帖子在提出问题时得到了 -1(甚至提出了我的基本尝试)
-
不幸的是,有些人会不喜欢它,即使他们认为它不值得回答
标签: javascript arrays flatten