欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

写一个递归函数将多维数组降维

程序员文章站 2022-04-05 08:06:31
...

利用递归将多维数组降维

function dimension(arr) {
  var newArr = [];
  for (var i = 0; i < arr.length; i++) {
    if (Array.isArray(arr[i])) {
      // 如果是数组,调用递归函数 dimension 将其扁平化,然后再 push 到 newArr 中
      newArr.push.apply(newArr, dimension(arr[i]));
    } else {
      // 不是数组直接 push 到 newArr 中
      newArr.push(arr[i]);
    }
  }
  return newArr;
}

var array = ["1", "2", ["2", ["6", ["4", "9"], "8"], "5"], "3", "3", "2"];
var reduce = dimension(array);
console.log(reduce);