1. forEach 遍历数组元素
var a = [1, 2, 3, 4, 5];
var b = [];
a.forEach((item) => {
b.push(item + 1);
});
console.log(b); // [2,3,4,5,6]
2.filter 过滤数组,返回新数组
var a1 = ['a', 10, 'b', 20, 'c', 30];
var a2 = a1.filter((item)=> {
//callback必须返回true或者false,返回true保留该元素,false不保留。
return typeof item === 'number';
});
console.log(a2); // [10,20,30]
3.map:方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组(不修改原数组)
var a = [1, 2, 3, 4, 5]
var b2 = a.map((item) => {
if(item >3){
return item;
}
});
console.log(b2); // [undefined, undefined, undefined, 4, 5]
4. every: 测试数组中所有元素是否都通过了指定函数的测试
var a = [1, 2, 3, 4];
var bb = a.every((item) => {
return item > 2;
});
console.log(bb); // false
5. some: 测试数组中是否至少有一项元素通过了指定函数的测试
var cc = a.some((item) => {
return item > 2;
});
console.log(cc);// true
6.includes: 用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。
let arr =[2,3,4,5,6,7]
let newarr = arr.includes(2) //true
let newarr = arr.includes(10)//false
7. find: 返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
let arr =[2,3,4,5,6,7]
let newarr = arr.find( element =>element >3)
console.log(newarr );// [4]
8.findIndex:返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1。
let arr =[2,3,4,5,6,7]
let newarr = arr.findIndex( element =>element >3)
console.log(newarr );// 2
9.indexOf :返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。
const sisters = ['a', 'b', 'c', 'd', 'e'];
console.log(sisters.indexOf('b'));
// 1
indexOf 与 findIndex 区别:
- indexOf :查找值作为第一个参数,采用 === 比较,更多的是用于查找基本类型,如果是对象类型,则是判断是否是同一个对象的引用
- findIndex :比较函数作为第一个参数,多用于非基本类型(例如对象)的数组索引查找,或查找条件很复杂