ES10常用语法

flat & flatMap

  1. flat
    定义: 传递层数进行多维数组降维,返回一个新的一维数组
    参数: flat(层级数)
    提示: 如果是不确定层次的多维数组降维,则可以传递参数 Infinity 进行全部层次的降维

    const arr = [[1],[2],[3,[4,5]],[[[[6,7]]]]]
    const flatArr = arr.flat(Infinity)
    console.log(flatArr) --> [1,2,3,4,5,6,7]
  2. flatMap
    定义: 先对数组进行map操作,再进行flat操作,返回一个新的数组
    参数:flatMap(callback, 层级数)

    let arr=['hello world','I am a good man','shuai bi ']
    let newArr=arr.flatMap((item) => item.trim().split(' '),Infinity)
    console.log(newArr) 
    -->
    [
    'hello','world','I','am','a','good','man','shuai','bi'
    ] 

    值得注意:
    (1) 数组与任意类型相加都会转变为字符串拼接的形式, 对象 类型则是拼接’[object Object]’
    (2) 遍历数组的API除了传递回调参数,第二个参数还以可以传递this,用来修改this指向

Object.fromEntries()

  1. 定义: 将Object.entries( )转换出来的数据结构返回成对象
    let arr = [ ['name','nano'], ['age', 18] ]
    let obj = Object.fromEntries(arr)
    console.log(obj)
    -->
    {
      "name": "nano",
      "age": 18
    }

trimStart & trimEnd

  1. 定义:去除首尾空格
    let str = ' nano '
    let trimStart = str.trimStart()  
    console.log( trimStart ) --> 'nano '
    
    let trimEnd = str.trimEnd()
    console.log(trimEnd) --> ' nano'

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!