JavaScript中操作数组的方法

386 阅读2分钟

1.filter()方法 不会改变原数组

image.png

在ES6中 使用箭头函数更加整洁:

image.png

filter()方法创建一个新的数组,filter方法接受两个命名参数回调函数callback和可选对象contextObject

如果回调函数返回true 则将用filter遍历的元素放在返回数组中

其中回调函数接受三个参数

image.png

  1. 其中currentElement是回调函数正在处理的数组中的当前元素
  2. index是索引
  3. 被遍历的数组对象
filter方法的返回值:

返回给定数组的一部分的浅拷贝,其中只包括通过提供的函数实现的测试的元素。如果没有元素通过测试,则返回一个空数组。

2.join()方法 不会改变原数组

将数组或者伪数组连接成一个字符串并返回这个字符串 image.png

3.map()方法 不会改变原数组

image.png .map()接受四个参数

  1. callbackFn回调函数 数组中每个元素执行的函数 返回值作为一个元素被添加到新数组中
  2. element 数组中当前正在处理的元素
  3. index 正在处理的元素索引
  4. array 调用.map的数组本身
  5. 执行callbackFn时用作this的值
map方法的返回值:一个新数组 每个元素都是回调函数的返回值

4.push()方法 会改变原数组!!

push()方法将指定的元素添加到数组的末尾,并返回新的数组长度

image.png

push方法的返回值:调用方法的对象的新 length 属性

5.reduce()方法 会改变原数组!!

reduce方法会遍历数组的每一项,接收两个参数

5.slice()方法(访问数组的一部分而不修改它) 不改变原数组会返回一个新数组

slice()
slice(start)
slice(start, end) 包括start 但不包括end

image.png

6.splice()方法

参数:

  • start 从 0 开始计算的索引,表示要开始改变数组的位置
  • deleteCount可选 ,一个整数,表示数组中要从 start 开始删除的元素数量