const arr =[1,2,[3,4,[5,6]]];// to enable deep level flatten use recursion with reduce and concatfunctionflatDeep(arr, d =1){return d >0? arr.reduce((acc, val)=> acc.concat(Array.isArray(val)?flatDeep(val, d -1): val),[]): arr.slice();};flatDeep(arr,Infinity);// [1, 2, 3, 4, 5, 6]// Faltten an arrayconst age=[1,2,[12,23,[75,34,[2,34]],[32,45]],[3,456],[56,5]]// to store resultant arraylet result=[]functionflattenArray(inputArray){
inputArray.map((value)=>{if(Array.isArray(value)){flattenArray(value)}else{
result.push(value)}})}// calling function to fallten an arrayflattenArray(age);
const arr =[1,2,[3,4]];// To flat single level array
arr.flat();// is equivalent to
arr.reduce((acc, val)=> acc.concat(val),[]);// [1, 2, 3, 4]// or with decomposition syntaxconstflattened=arr=>[].concat(...arr);