首页 > 编程语言 > 详细

5种数组扁平化方法

时间:2020-05-28 18:38:29      阅读:63      评论:0      收藏:0      [点我收藏+]
let arr = [1, 2, [3, 4], [[5, 6], 7, [8, [9]]]]
function flatten1(arr) {
  let res = [];
  arr.forEach(item => {
    res = res.concat(Array.isArray(item) ? flatten1(item) : item)
  })
  return res;
}
function flatten2(arr) {
  return arr.reduce((prev, item) => {
    return prev.concat(Array.isArray(item) ? flatten2(item) : item)
  }, [])
}
function flatten3(arr) {
  while (arr.some(item => Array.isArray(item))) {
    arr = [].concat(...arr)
  }
  return arr;
}
function flatten4(arr) {
  return arr.flat(Infinity)
}
function flatten5(arr) {
  return arr.toString().split(‘,‘).map(item => item - 0)
}

5种数组扁平化方法

原文:https://www.cnblogs.com/superlizhao/p/12981941.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!