" " , ; javascript , .
, , , , flatten .
function steamrollArray(array) {
var flatArray = [];
flatten(array, flatArray);
return flatArray;
}
function flatten(array, flatArray) {
flatArray = flatArray || [];
for (var i = 0; i < array.length; i++) {
if (Array.isArray(array[i])) {
flatten(array[i]);
} else {
flatArray.push(array[i]);
}
}
}
steamrollArray([1, [2], [3, [[4]]]]);
, flatArray flatten. steamrollArray ... .
function flatten(array, flatArray) {
flatArray = flatArray || [];
for (var i = 0; i < array.length; i++) {
if (Array.isArray(array[i])) {
flatten(array[i], flatArray);
} else {
flatArray.push(array[i]);
}
}
return flatArray;
}
flatten([1, [2], [3, [[4]]]]);
, . , "", . , , . , flatten for, i flatArray. flatArray flatten, .