在项目中经常用到的就是这几个,个人频繁用到最多的就是map。
map
map也就是映射,是一一对应的关系,返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
let arr = [54,66,34,99,60];
let arr2 = arr.map(item =>{
return item>=60 ?'及格' : '不及格';
})
console.log(arr2); // ["不及格", "及格", "不及格", "及格", "及格"]
我一般是结合遍历输出一个选择框内容:
let array = [{id:1,name:'a'},{id:2,name:'b'},{id:3,name:'c'}]
<Select>{array.map((item,index)=>{
return <Option value={item.id}>{item.name}</Option>
})}</Select>
这其中Select为AntD组件
filter
filter根据英文意思就可以知道他是过滤的意思,一般都是配合if判断来返回一个新的数组的
let arr = [50,20,58,83];
let arr2 = arr.filter(item=>{
if(item%2==1){
return false;
}else{
return true;
}
});
console.log(arr); // [50, 20, 58, 83]
console.log(arr2); // [50, 20, 58]
reduce
reduce的英文意思是减少,其实就是接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
let arr = [66,77,88,56,60];
let arr2 = arr.reduce((tmp,item,index) =>{
if(index == arr.length-1){
return (tmp+item)/arr.length;
}else{
return tmp+item;
}
})
console.log(arr2); //69.4
这是在把所有的数添加在一起之后在平均。
坚持每天更新一篇文章,嘻嘻(喜欢游戏的可以点击发现博主,里面有我的辣眼睛的操作_(:3」∠❀)_菊花碎了一地)
更多关于es6数组操作:http://www.wangcanghai.cn/detailes?id=601b706524fc4a133c24648c
发现博主