js 数组的高阶用法:
1: 数组 Map (映射) Reduce (汇总) forEach (遍历, 迭代) Filter (过滤)
Map (映射): Map: (就是数据一个对一个) map (): 返回一个新的数组, 新数组中元素为原数组中元素调用函数处理后值.
map (): 方法会按照原始数组顺序依次处理数据.
注意: map (): 方法: 不会对空数组进行检测. map(): 方法不会改变原始数组.
在map () 方法中直接可以箭头函数. 箭头函数注意点: 有两点:
箭头函数: 是ES6 中新增特性:
第一点: 箭头函数中: 如果参数只有一个, 小括号可以省略. (参数大于一个, 小括号就是不可以省略的)
箭头函数中: 如果执行语语句只有一句的话, return 关键字 和花括号可以省略掉.
2: reduce : 方法: (汇总) 一堆数据出来一个数据.
reduce 方法中有三个参数: (temp, item , index) log输出一些每一个参数, 即可明白每一个参数含义.
reduce: 接受 一个函数作为累加器: 数组中每一个值从左到右依次递减. 最终计算出一个最终值.
reduce 方法不会对空数组执行: 回调函数的.
3: forEach (): (迭代,更新)
forEach() 方法用于调用数组的每个元素, 传递两个参数 (item , index); item 代表数组中每一项元素, index: 代表每一项元素的索引;
forEch () 方法: 对空数组不会执行回调函数了.
4: filter: 过滤方法: filter(过滤: 就是会删除一部分, 留下一部分)
filter() 创建一个新的数组: 新数组中的元素是通过检查指定数组中符合条件的所有元素;
5: some: 方法: (some 方法就是: 判断是否含有条件的元素, 返回布尔值;)
some(): 用于: 检测数组中元素是否满足指定的条件; some()方法: 会依次执行数组中的每一个元素.
some(): 会依次执行数组中每一项元素.
如果有一个元素满足条件, 则表达式饭返回true; 剩余元素不会再执行.
如果没有满足条件, 则会返回false;
some() : 方法不会对空数组进行检测, some() 方法不会改变原数组.
6: every(): 方法: 判单是否所有元素符合条件, (返回布尔值)
every(): (判断是否全部元素, 是否符合条件)
every() 方法使用指定函数检测数组中元素.
如果数组中检测到有一个元素不满足, 则整个表达式返回false. 且剩余的元素不会在进行检测.
如果所有的元素都满足, 则返回true;