数组Array中的map、sort、reduce等高阶函数

Array数组常常用到,现在谈一下它的高阶函数
map() 它对于数组的每一个元素进行操作
var arr = ["1","2","3","4"] ;
var arr2 = arr.map(function(x){
return x * 1
})
console.log(arr2)
map() 作为高阶函数 事实上它只是把运算规则给抽象化
在这里插入图片描述reduce() 它是对数组元素进行统一整合处理
例如 将arr的每个元素相乘或者相加或者输出 1234
arr2.reduce(function (x, y) {
return x + y;
})
arr2.reduce(function (x, y) {
return x * y;
})
arr2.reduce(function (x, y) {
return x * 10 + y;
})
在这里插入图片描述
filter() 它的操作就是将Array的某些不符合条件的元素过滤掉,然后返回剩下的元素
arr2.filter(function(x){
return x % 2 !== 0;
})
将偶数过滤掉
在这里插入图片描述
sort() 排序 但是Array中的sort方法默认将所有的元素先转换成string再进行排序
如果不知道sort()方法的默认排序规则直接对数字排序 肯定会在坑里出不来
var arr3 = [5,9,7,1,9];
arr3.sort(function(x,y){
if(x < y){
return -1;
}
if(x > y){
return 1;
}
return 0;
)
在这里插入图片描述every() 判断数组的所有元素是否满足条件 返回值为boolean值
arr.every(function (s) {
return s.length > 0;
})
some() 和every()相同的是 它的返回值也是Boolean,但是不同的是只要数组中的某一项满足条件 就返回true
arr.some(function (s) {
return s > 0;
})
find() 用于查找符合条件的第一个元素 如果找到了 就返回这个元素 否则就返回undefined
arr2.find(function(x){
return x +1 == 2;
})

**findIndex()**查找符合条件的第一个元素 不同之处在于findIndex会返回这个元素的索引值
arr2.findIndex(function(x){
return x +1 == 2;
})
**forEach()**用于遍历数组,传入的函数也基本不需要返回值
element 数组元素
idnex 元素索引值
arr.forEach(function(element,index){
console.log(element);
console.log(index);
})

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值