zoukankan      html  css  js  c++  java
  • 数组扁平化

    1. 调用 ES6 中的 flat 方法 
    arr.flat(Infinity)

     
    2.  递归 
         function flatten(arr) {
          let res = []
          for (let i of arr) {
            Array.isArray(i) ? res = res.concat(flatten(i)) : res.push(i)
          }
          return res
        }
        console.log(flatten(arr)) 
    3.  reduce 
        function flatten(arr) {
          return arr.reduce((pre, cur) => pre.concat(Array.isArray(cur) ? flatten(cur) : cur), [])
        }
        console.log(flatten(arr))
    4. 扩展运算符
    function flatten(arr) {
          while (arr.some(item => Array.isArray(item))) {
            console.log(arr, 'kkk')
            arr = [].concat(...arr)
            console.log(arr, 'lll')
          }
          return arr
        }
        console.log(flatten(arr))
  • 相关阅读:
    pe文件结构
    dll
    术语
    创建内存映射文件
    函数的调用约定
    串口
    linux 之 tcpdump
    linux 之程序管理
    perl 之eval
    2020-10-27_组合快捷键
  • 原文地址:https://www.cnblogs.com/wangsai-666/p/13420332.html
Copyright © 2011-2022 走看看