Flatten array iterative and recursive

Run Settings
LanguageTypeScript
Language Version
Run Command
const flattenArrayIterative = (arr) => { const stack = [arr]; const result = []; while(stack.length) { const list = stack.pop(); for (const val of list) { if (Array.isArray(val)) { stack.push(val); } else { result.push(val); } } } return result; }; const flattenArrayRecursive = (arr) => arr.reduce((acc, curr) => acc.concat(Array.isArray(curr) ? flattenArrayRecursive(curr) : curr), []); const nums2 = [2, 4, [5, [[4, [21, [56, [28]]], 90]]], 9, 2, 4, [5, [[4, [21, [56, [28]]], 90]]], 9]; console.log(flattenArrayIterative(nums2).sort()); console.log(flattenArrayRecursive(nums2).sort());
Editor Settings
Theme
Key bindings
Full width
Lines