sort,map,reduce,filter

map

var obj = [{
    age:11,name:"a"
},{
    age:22,name:"b"
},{
    age:33,name:"c"
}]
//第一个参数:数组中正在处理的当前元素
//第二个参数代表索引
//第三个是正在调用的这个数组
var obj1 = obj.map(function(e,inx,arr){
    console.log(e,inx,arr)
    return e.name
})
//箭头函数形式
// var obj1 = obj.map(e=>e.age)
console.log("输出结果:",obj1)

在这里插入图片描述

reduce

var obj = [{
    age:11,name:"a"
},{
    age:22,name:"b"
},{
    age:33,name:"c"
}]
// 有两个参数一个是回调函数,一个是初始化值,也就是那个n,如果不设置初始化值,则默认数组的第一个元素
// 回调函数第一个参数是累加器
// 回调函数第二个参数是当前值
// 回调函数第三个参数是当前索引
// 回调函数第四个参数是源数组
var addAge = obj.reduce((n,y)=>{
    console.log(n,y)
    return n+y.age
},0)//设置初始值为0,0就代表那个N

在这里插入图片描述

filter

顾名思义就是过滤器

var obj = [{
    age:11,name:"a"
},{
    age:22,name:"b"
},{
    age:33,name:"c"
}]
var arrName = obj.filter((e)=>{
    return e.age === 11//返回满足age=11的元素
})
console.log(arrName)

sort

  • sort不传任何参数,则会先将数组元素转为字符串然后按照unicode编码排序
var num = [1,3,13,5,123,35]
num.sort()
//先比较第一个字符,然后到第二个字符,一直延续下去
console.log(num)//[ 1, 123, 13, 3, 35, 5 ]
  • 要想按照大小排序,则需要传入一个回调函数
  • a代表后一个元素,b代表前一个元素,如下图中打印a为3,b为1
  • 当a-b>0,a就会被移到b后面
  • 当a-b<0,a就会被移到b前面
  • return a-b则代表升序
  • return b-a则代表降序
ar num = [1,3,13,5,123,35]
num.sort((a,b)=>{
    console.log(a,b)
    return a-b
})
console.log("输出结果",num)

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值