banner
banner
banner
NEWS LETTER

ES6-数组的拓展

Scroll down

扩展运算符:…

Array.from():转数组

Array.of():将一组值转为数组

copyWithin():

  • Array.copyWithin(定位, 从定位开始读, 停止读) :复制到定位的位置(原有数据会覆盖),返回新数组

find(),findIndex(),findLast(),findLastIndex()

  • find():找出第一个符合条件的数组成员,没有返undefined
  • findIndex():找出第一个符合条件的数组成员,没有返-1
  • findLast(): 从后面到前面找起
  • findLastIndex():从后面到前面找起

fill(填充数,填充起始位,结束位)给值填充一个数组

  • [‘a’, ‘b’, ‘c’].fill(7, 1, 2) // [‘a’, 7, ‘c’]

toReversed(),toSorted(),toSpliced(),with() — 不改变原数组,而是返回原数组操作后的拷贝

  • toReversed()对应reverse(),用来颠倒数组成员的位置。
  • toSorted()对应sort(),用来对数组成员排序。
  • toSpliced()对应splice(),用来在指定位置,删除指定数量的成员,并插入新成员。
  • with(index, value)对应splice(index, 1, value),用来将指定位置的成员替换为新的值。

⭐ group()、groupToMap() — 将数组成员分组

  • group((数组当前成员,该成员的索引,原数组) => {return 条件 ? ‘分组名1’ :’分组名2’ }) — 按照字符串分组
  • groupToMap((数组当前成员,该成员的索引,原数组) => {return 条件 ? 分组对象名1 :分组对象名2 }) — 按照对象分组
    1
    2
    3
    4
    5
    6
    7
    const array = [1, 2, 3, 4, 5];
    const odd = { odd: true };
    const even = { even: true };
    array.groupToMap((num, index, array) => {
    return num % 2 === 0 ? even: odd;
    });
    // Map { {odd: true}: [1, 3, 5], {even: true}: [2, 4] }

⭐ 数组的空位

  • Array(3) // [, , ,] —- 遍历空位识别为undefined
  • Array.from()、扩展运算符(…)、entries()、keys()、values()、find()和findIndex()会将空位处理成undefined。
  • copyWithin()会连空位一起拷贝。
  • fill()会将空位视为正常的数组位置。
  • for…of循环也会遍历空位。
  • map()方法遍历,空位是会跳过的。
其他文章
cover
ES6-字符串
  • 24/10/31
  • 15:54
  • ES6
cover
ES6-数值的拓展
  • 24/10/31
  • 15:54
  • ES6
目录导航 置顶
  1. 1. 扩展运算符:…
  2. 2. Array.from():转数组
  3. 3. Array.of():将一组值转为数组
  4. 4. copyWithin():
  5. 5. find(),findIndex(),findLast(),findLastIndex()
  6. 6. fill(填充数,填充起始位,结束位)给值填充一个数组
  7. 7. toReversed(),toSorted(),toSpliced(),with() — 不改变原数组,而是返回原数组操作后的拷贝
  8. 8. ⭐ group()、groupToMap() — 将数组成员分组
  9. 9. ⭐ 数组的空位
请输入关键词进行搜索