@@ -2937,3 +2937,47 @@ console.time(); console.log(memoizedAdd(3)); console.timeEnd(); // cached
29372937//Fetching from cache 13 default: 0.16674804687 ms
29382938//Fetching from cache 13 default: 0.161865234375 ms
29392939========================================================================================================================================================================
2940+ *********************Using Custom function with Recursion*****************
2941+ const age=[1,2,
2942+ [12,23,[75,34,[2,34]],[32,45]],
2943+ [3,456],
2944+ [56,[5]]]
2945+ var result=[]
2946+ function flattenArray(inputArray)
2947+ {
2948+ inputArray.map((value)=>{
2949+ if(Array.isArray(value))
2950+ {
2951+ flattenArray(value)
2952+ }
2953+ else{
2954+ result.push(value)
2955+ }})
2956+ }
2957+ flattenArray(age)
2958+ console.log(result) ////[1,2,12,23,75,34,2,34,32,45,3,456,56,5]
2959+
2960+ *********************Using One Line Arrow function*****************
2961+ var result=[]
2962+ const flattenArray = (inputArray) => {
2963+ inputArray.map((value)=> Array.isArray(value) ? flattenArray(value) : result.push(value))
2964+ }
2965+ flattenArray(age)
2966+ console.log(result) //[1,2,12,23,75,34,2,34,32,45,3,456,56,5]
2967+
2968+ *********************Using Flat*****************
2969+ const age=[1,2,
2970+ [12,23,[75,34,[2,34]],[32,45]],
2971+ [3,456],
2972+ [56,[5]]]
2973+ var updatedArr= age.flat(Infinity);
2974+ console.log(updatedArr) //[1,2,12,23,75,34,2,34,32,45,3,456,56,5]
2975+
2976+ *********************Using Reducer****************
2977+ function flatDeep(arr, d = 1) {
2978+ return d > 0 ? arr.reduce((acc, val) =>
2979+ acc.concat(Array.isArray(val) ? flatDeep(val, d - 1) : val), [])
2980+ : arr.slice();
2981+ };
2982+ console.log(flatDeep(arr, Infinity)) //[1,2,12,23,75,34,2,34,32,45,3,456,56,5]
2983+ =======================================================================================================================================================================
0 commit comments