名称 | 作用 | 函数返回值 | return |
---|---|---|---|
forEach() | 遍历数组 | 无 | 无 |
map() | 映射 | 新数组 | return(当前元素) |
filter() | 过滤 | 新数组 | return true(元素添加到新数组) |
some() | 用于判断数组中是否存在满足条件的元素 | 布尔类型 | return true;循环结束 |
every() | 用于判断数组中是否所有元素都满足条件 | 布尔类型 | return true; 循环继续 |
findIndex() | 获取符合条件的第一个元素的下标 | 数字 | return true; 循环结束 |
reduce() | 遍历数组元素,为每一个元素执行一次回调函数 | 新数组 | return(最终的值) |
目录
一、forEach()
相当于for循环的另一种写法,遍历数组所有元素,遍历arr.length次
1、示例代码:
<script>
let arr1 = [10, 20, 58, 47, 4, 9, 13, 15];
//使用ES6的箭头函数
//value:为元素值,index:为元素下标
arr1.forEach((value, index) => {
//此处的``为ES6的模板字符串
console.log(`当前索引:${
index},当前值:${
value}`);
})
</script>
2、输出结果
二、map()
map就是遍历每一个元素,并对每一个元素进行隐射处理,返回一个新数组(比如商品超过200打八折),返回新数组的长度 == 原数组长度
1、示例代码:
<script>
let arr = [22, 30, 56, 160, 10, 58, 78, 95];
//数组中每一个元素*0.6
//value:为元素值,index:为元素下标
let arrNew = arr.map((value, index) => value * 0.6)
//判断当前元素是否大于100,如果大于100减50,否则原样输出
// let arrNew1 = arr.map((value, index) => {
// if (value >= 100) {
// return value - 50
// } else {
// return value
// }
// })