1、map方法,用于映射数据,返回映射后的数据。如下方,将arr数组中的成绩映射为及格或者不及格(返回新数组)。
let arr = [73,23,54,89,99,30,23];
//正常写法
let arr1 = arr.map(function(item){
return item>60?'及格':'不及格';
});
//简写,利用箭头函数
let arr2 = arr.map((item) => {
return item>60?'及格':'不及格';
});
//语法精简2(箭头函数的特性,参数有且只有一个)
let arr3 = arr.map(item => item>60?'及格':'不及格');
2、reduce方法,累加器,用于数据累加。如下方进行求和:
let arr = [1,2,3,4,5];
//普通写法
let arr1 = arr.reduce(function(tem,item,index){
// 参数 tem 代表两个数的结果,一开始代表数组的第一个元素,第二次则代表第一次return回来的值
// 参数 item 一开始代表第二个数组元素,第二次则代表当期元素
if(index == arr.length-1){
return (tem + item)/(index+1);
}else{
return tem + item;
}
});
//精简写法
let arr2 = arr.reduce((tem,item,index) => {
return index == arr.length-1?(tem + item)/(index+1):tem + item;
);
3、filter,用于过滤数据,当返回元素为true时,返回该元素。如下方,只保留数据中的奇数(返回新数组):
let arr = [1,2,3,4,5,6,7];
//普通写法
let arr1 = arr.filter(function(item){
return item %2 ==1?item:'';
// return item %2 ==1?true:false;
})
//精简写法
let arr2 = arr.filter(item =>item %2 ==1);
4、forEach,遍历数据
let arr = [1,2,3,4,5]
arr.forEach((item,index,arr) => {
alert(item) ;//当前值
alert(index);//当前下标
alert(arr); //当前数组
})