ES6新增循环

forEach()、map()、filter()、find()、every()、some()、reduce()
  1. forEach() — —遍历数组
  2. map()— —更新数组
  3. filter()、includes()、find()、findIndex()— —筛选(删除)数组
  4. some()、every()— —判断数组
  5. reduce()— —叠加数组

arr.forEach()— —遍历数组

  1. 遍历数组全部元素,利用回调函数对数组进行操作,自动遍历数组.length次数
  2. 且无法break中途跳出循环
  3. 不支持return操作输出,return只用于控制循环是否跳出当前循环

arr.map()— —更新数组

  1. 创建新数组
  2. 不改变原数组
  3. 输出的是return什么就输出什么新数组
  4. 回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
  5. 使用return操作输出,会循环数组每一项,并在回调函数中操作

arr.filter()、includes()、find()、findIndex()— —筛选数组

一、arr.filter()
1、创建新数组
2、不改变原数组
3、输出的是判断为true的数组元素形成的新数组
4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

arr.includes()
只是判断数组是否含有某值,不用return,不用回调函数,输出一个true或false

arr.find()
1、不创建新数组
2、不改变原数组
3、输出的是一旦判断为true则跳出循环输出符合条件的数组元素
4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

arr.findIndex()— — 与find()相同
1、不创建新数组
2、不改变原数组
3、输出的是一旦判断为true则跳出循环输出符合条件的数组元素序列
4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

arr.some()、every()— —判断数组

一、some()
1、不创建新数组
2、不改变原数组
3、输出的是判断为true则马上跳出循环并return成true
4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

二,every()— —与some相反
1、不创建新数组
2、不改变原数组
3、输出的是判断为false则马上跳出循环并return成false
4、回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

reduce()— —叠加数组

不一定在数学意义上的叠加计算,这里叠加指:可以利用前遍历操作的结果到下一次遍历使用,重复叠加使用下去

1、创建新数组
2、不改变原数组
3、输出的是return叠加什么就输出什么 新数组
4、回调函数参数
pre(第一次为数组第一项,之后为上一操作的结果)
next(数组的下一项)
index(next项的序列)
arr(数组本身)
回调函数后的改变第一项参数。(不影响原数组)
5、使用return操作输出,会循环数组每一项,并在回调函数中操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值