Skip to content
JavaScript

数组扁平化

将多维数组扁平化为一维。

#array#flatten

Code

javascript
function flatten(arr, depth = Infinity) {
  return arr.reduce((acc, val) =>
    Array.isArray(val) && depth > 0
      ? acc.concat(flatten(val, depth - 1))
      : acc.concat(val),
    []
  );
}

// Using native flat
const flat = arr => arr.flat(Infinity);