每天和代码打交道的我们一定要特别了解代码,熟悉代码,就像要了解你的女朋友一样,
若她涉世未深,就带她看遍世间繁华,若她历经沧桑,就带她去坐旋转木马。
大家认同吗?(话不多说!!!)
今天就简单说说数组遍历的几种常见的方法:
1.map
map的作用与场景:映射数组(将数组每一个元素处理之后,得到一个新数组)
特点:1.循环次数==数组长度 2.map本身返回值作用映射之后的新数组、
例:
2.filter
filter的作用与场景:筛选数组
经典场景:筛选根据条件筛选数组,将符合条件的元素放入新数组中
特点:1.循环次数==数组长度 2.调回函数内部return作用:(1).return true:满足筛选条件,当前元素放入新数组 (2).return false:不满足筛选条件,当前元素不放入新数组
例:
3.forEach
forEach的作用与场景:遍历数组 类似for循环的作用
特点:1.循环次数==数组长度
例:
4.some
some作用与场景 : 判断数组中是否有满足条件的元素 ( 逻辑或|| )
经典场景 : 非空判断。 多个表单只要有一个是空的,就不能提交
特点:1 循环执行次数 != 数组长度 2.回调函数内部return作用
(1)return true : 循环结束。 找到满足条件的元素,此时some的返回值也是true
(2)return false : 循环继续。没有找到满足条件的元素,如果循环执行完毕还是false,最终some的返回值也是false
例:
5.every
every作用与场景 : 判断数组是否所有的元素都满足条件 ( 逻辑与&& )
经典场景 : 开关思想. 购物车全选
语法特点 :
1 循环执行次数 != 数组长度
2 回调函数内部return作用
(1)return true : 循环继续。 当前元素满足条件,继续判断. 如果循环执行完毕还是true,则every返回值就是true
(2)return false : 循环结束。当前元素不满足条件。 every的返回值也是false
3 every本身返回值作用
return true : 全部元素都满足条件
return false : 有元素不满足
6.findIndex
findIndex作用与场景 : 找元素下标
* 数组中的元素是值类型: arr.indexOf()
* 数组中的元素是引用类型: arr.findIndex()
语法特点 :
1 循环执行次数 != 数组长度
2 回调函数内部return作用
(1)return true : 找到了,循环结束。 此时findIn是当前元素下标
(2)return false : 没找到,循环继续。 如果执行完毕还找不到,最终返回固定值-1
3 findIndex本身返回值作用
return -1 : 没有
return 下标 : 有
7.reduce
1.数组reduce方法作用: 为每一个元素执行一次回调,并最终返回最后一次结果 经典应用: 求数组累加和