美文网首页
es6-数组的扩展

es6-数组的扩展

作者: ysdyyy | 来源:发表于2020-01-19 18:17 被阅读0次
    • 扩展运算符 ...
      ···javascript
      console.log(...[1,2,3]);
      ···
    • Array.from
      将类似数组的对象和可遍历对象转为真正的数组
    • Array.of用于将一组值,转换为数组。
    Array.of(3, 11, 8) // [3,11,8]
    Array.of(3) // [3]
    Array.of(3).length // 1
    
    • 数组实例:copyWithin。在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组
    [1, 2, 3, 4, 5].copyWithin(0, 3)
    // [4, 5, 3, 4, 5]
    
    • 实例:find findIndex
    • 实例:fill 填充数组
    ['a', 'b', 'c'].fill(7)
    // [7, 7, 7]
    
    new Array(3).fill(7)
    // [7, 7, 7]
    
    • 实例:entries keys values,返回一个遍历器对象
    • 实例:includes 是否包含给定的值
    • 实例:flat faltMap flat将数组拉平,变成一维数组;flatMap对每个成员执行一个函数,只能展开一层数组
    [2, 3, 4].flatMap((x) => [x, x * 2])
    // [2, 4, 3, 6, 4, 8]
    

    上面代码中,遍历函数返回的是一个双层的数组,但是默认只能展开一层,因此flatMap()返回的还是一个嵌套数组。

    • 数组的空位
      数组的空位是没有任何值
    0 in [undefined, undefined, undefined] // true
    0 in [, , ,] // false
    

    空位的处理规则非常不统一,所以建议避免出现空位。

    • Array.prototype.sort() 的排序稳定性
      排序稳定性:排序关键字相同的项目,排序前后的顺序不变
      常见的排序:插入排序、合并排序、冒泡排序等都是稳定的
      堆排序、快速排序是不稳定的。
      不稳定排序在多重排序时可能会产生问题。

    相关文章

      网友评论

          本文标题:es6-数组的扩展

          本文链接:https://www.haomeiwen.com/subject/izarzctx.html