• 多维数组扁平化一维数组


    1.Array.prototype.flat()

    flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。

    const arr = [0, 1, 2, [[[3, 4]]]];
    console.log(arr.flat(2)); // [0, 1, 2, [3, 4]]
    //使用 Infinity,可展开任意深度的嵌套数组
    console.log(arr.flat(Infinity)) // [0,1,2,3,4]
    String.prototype.toString

    2.String.prototype.toString() + String.prototype.split()

    这个方法主要先使用String.prototype.toString方法将数组转化为字符串,然后再使用split方法进行分割成子字符串数组

    const arr = [0, 1, 2, [[[3, 4]]]];
    
    var str = arr.toString();    // '0,1,2,3,4'
    
    console.log(str.split(','));    // ["0", "1", "2", "3", "4"]
    
    // 简化arr.toString().split(',')

     

    3.String.prototype.join() + String.prototype.split()

    join() 类似toString方法也是将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。

    const arr = [0, 1, 2, [[[3, 4]]]];
    
    var str = arr.join();    // '0,1,2,3,4'
    
    console.log(str.split(','));    // ["0", "1", "2", "3", "4"]
    
    // 简化arr.join().split(',')
  • 相关阅读:
    字符串语法
    组合数
    并查集
    Java Collection HashMap源码分析
    Java 虚拟机 ClassLoader
    Java 多线程 Future
    Java 虚拟机 GC机制
    Java 基础 原生类型
    Java 多线程 死锁deadlock产生原因+避免方法
    Java 基础 基本类型vs引用类型,传值vs传引用
  • 原文地址:https://www.cnblogs.com/smallpen/p/15073113.html
Copyright © 2020-2023  润新知