对嵌套的数组进行扁平化处理。你必须考虑到不同层级的嵌套。
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) {
var result=[];getElement(arr,result);
return result;
}
function getElement(arr,result){
for(var i=0;i<arr.length;i++){
if(arr[i] instanceof Array){
getElement(arr[i],result);
}else{
result.push(arr[i]);
}
}
return result;
}
steamroller([{},1, [2], [3, [[4]]]]);