JSFiddle - React, Tailwind, and code Playground
by aubz88
JavaScript
function flatten(input) {
var result = [];
for (var i = 0; i < input.length; i++) {
if (Object.prototype.toString.call(input[i]) === '[object Array]') {
result = result.concat(flatten(input[i]));
} else {
result.push(input[i]);
}
}
return result;
}
var nestedArray1 = [
[1, 2, [3]], 4
];
console.log(flatten(nestedArray1));
var nestedArray2 = [
[1],
[2],
[3, [4]]
];
console.log(flatten(nestedArray2));
var nestedArray3 = [
[null, undefined, [3]], 4
];
console.log(flatten(nestedArray3));
var nestedArray4 = [
[null, undefined, [null]], null
];
console.log(flatten(nestedArray4));
var nestedArray5 = [
[1, 2, [null]], 4
];
console.log(flatten(nestedArray5));