I want to take all sub-arrays in a nested array, making a new array out of each depth (including the original input array), and place them into a new array.
Input:
var array = ["cat", ["dog", ["rabbit"]], "hamster"]
Output:
newArray = [
["cat", ["dog", ["rabbit"]], "hamster"],
["dog", ["rabbit"]],
["rabbit"]
]
Attempt:
var unnest = function(array) {
var container = [array];
for (var i in array) {
if (array[i] instanceof Array) {
container.push(array[i]);
}
}
return container
}
I know this needs some sort of iterative or recursive process, but that's where I'm stuck (I'm new to JavaScript). Thanks.