are there any downsides to my solution to flattening nested arrays
function steamrollArray(arr) {
if (arr.length == 0) return [];
let c = arr.shift();
if (typeof c == "object") {
if (c instanceof Array == false) return [c, ...steamrollArray(arr)];
return [...steamrollArray(c), ...steamrollArray(arr)];
} else {
return [c, ...steamrollArray(arr)];
}
}
let c = steamrollArray([1, {}, [3, [[4]]]]);
console.log(c);