问答

js数组如何按照属性分类?

作者:admin 2021-06-08 我要评论

如: let arr = [ {id:1,val:100,name:"张"}, {id:2,val:100,name:"刘"}, {id:3,val:300,name:"林"}, {id:4,val:200,name:"许"}, {id:5,val:100,name:"周"}, {id...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

如:

let arr = [
    {id:1,val:100,name:"张"},
    {id:2,val:100,name:"刘"},
    {id:3,val:300,name:"林"},
    {id:4,val:200,name:"许"},
    {id:5,val:100,name:"周"},
    {id:6,val:200,name:"张"}
]

如何按照val分类把数组变成[ [ ],[ ],[ ] ]的格式?

###
const map = arr.reduce((result, item) => {
    result[item.val] = result[item.val] || []
    result[item.val].push(item)
    return result
}, {})

// result即为所求
const result = Object.values(map)
###
const categorys=Array.from(new Set(arr.map(item=>item.val)))
return categorys.map(c=>arr.filter(a=>a.val===c))

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • js数组如何按照属性分类?

    js数组如何按照属性分类?

  • element ui el-table水平滚动条出不来,

    element ui el-table水平滚动条出不来,

  • ios 如何判断设备方向是否竖屏锁定(自

    ios 如何判断设备方向是否竖屏锁定(自

  • "edit:编辑,operation:设置" 这样的

    "edit:编辑,operation:设置" 这样的

腾讯云代理商
海外云服务器