frontend-challenges icon indicating copy to clipboard operation
frontend-challenges copied to clipboard

18 - flatten - javascript

Open jsartisan opened this issue 1 year ago • 1 comments

index.js

export function flatten(arr, depth = 1) {
  const result = [];
  
  for (let i = 0; i < arr.length; i++) {
    const current = arr[i];

    if (Array.isArray(current) && depth > 0) {
      result.push(...flatten(current, depth - 1));
    } else {
      result.push(current);
    }
  }

  return result;
}

jsartisan avatar Jun 15 '24 13:06 jsartisan

Sharing another solution that uses classic for loop instead of reduce.

jsartisan avatar Jun 15 '24 13:06 jsartisan