遍历、映射、过滤、检测、简化、搜索:
forEach(); // 从头至尾遍历数组,参数为数组元素、数组索引、数组本身
使用:
var data = [1,2,3,4];
var sum = 0;
data.forEach(value=>{
sum+=value; // 每个值相加
});
map(); // 调用数组每个元素传递给指定的函数,并且返回一个新数组。(映射)
使用:
var a = [1,2,3];
a.map(x=>x*x); // 1、4、9
filter(); // 过滤数组
使用:
var a = [1,2,3,4];
a.filter(x=>x>2); // 过滤元素中大于2的值 返回3、4
every(); // 数组元素应用指定的函数针对所有进行判定,返回布尔值
使用:
var a = [1,2,3,4];
a.every(x=>x>5); // false 所有的元素都不大于5
some(); // 数组元素应用指定的函数存在进行判定,返回布尔值
使用:
var a = [1,2,3,4];
a.some(x=>x%3===0); // true 含有满足条件的值 3%3
reduce(); // 指定的函数将数组结合,生成单个值。
使用:
var a = [1,2,3,4];
a.reduce((x,y)=>{ // 初始化值数组索引元素的值相加
return x+y; // 数组求和 (0+1=1) (1+2=3) (3+3=6) (6+4=10)=> 计算过程
},0); // 0为初始值
reduceRight(); // 工作原理与reduce一样 不同的是它按照数组索引高到低。
indexOf(); // 搜索整个数组具有给定值的元素,返回第一个元素索引 没有找到返回-1
使用:
var a = [1,2,3,4];
a.indexOf(3); // 具有给定值 返回3的索引值2
lastIndexOf(); // 工作原理与indexOf相同,只不过它从数组尾部开始搜索。