FCC题目:对嵌套的数组进行扁平化处理。你必须考虑到不同层级的嵌套。
示例:
steamroller([[["a"]], [["b"]]]) 应该返回 ["a", "b"]。
steamroller([1, [2], [3, [[4]]]]) 应该返回 [1, 2, 3, 4]。
steamroller([1, [], [3, [[4]]]]) 应该返回 [1, 3, 4]。
steamroller([1, {}, [3, [[4]]]]) 应该返回 [1, {}, 3, 4]。
步骤:
function steamroller(arr) {
// I'm a steamroller, baby
var ayy=[];
function test(ay){
for(var i=0;i<ay.length;i++){
if(Array.isArray(ay[i])===true) test(ay[i]);
else ayy.push(ay[i]);
}
return ayy;
} return test(arr);
} steamroller([1, [2], [3, [[4]]]]);