前端理论总结(js)——reduce相关应用方法

按属性对object分类

let peple=[
    {name:'Alice',age:21},
    {name: 'Mex', age: 20},
    {name:'Jane',age:20}
}

function groupBy (objectArray, property) {
    return objectArray.reduce(function(pre, cur){
        let key=cur[property]
        if(!pre[key]){
            pre[key]=[]
        }
        pre[key].push(cur)
        return pre

    },{})
}
let groupByPeople-groupBy(peple, 'age')

console. log(groupByPeople)
/**{
'20': [ { name: 'Mex', age: 20 }, { name: 'Jane', age: 20 } ],
'21': [ { name: 'Alice', age: 21 } ]
}*/

使用扩展运算符和initialValue绑定包含在对象数组中的数组

let friends = [{
    name: 'Anna',
    books: ['Bible', 'Harry Potter'],
    age: 21
},{
    name: 'Bob',
    books: ['War and peace', 'Romeo and Juliet'],
    age: 26
},{
    name: 'Alice',
    books: ['The Lord of the Rings', 'The Shining'],
    age: 18
}]

let allbook=friends.reduce((pre,cur) ->{
    let key=cur['books']
    return [ ... pre, ... key]

},['alphoter'])
console.log(allbook);

/**
[
'alphoter',
'Bible',
'Harry Potter',
'War and peace',
'Romeo and Juliet',
'The Lord of the Rings',
'The Shining
]
*/

ヾ( ̄▽ ̄)Bye~Bye~

相关推荐

  1. 前端理论总结(js)——reduce相关应用方法

    2024-03-27 10:24:02       20 阅读
  2. 前端理论总结(css3)——css优化的方法

    2024-03-27 10:24:02       13 阅读
  3. 前端理论总结(html5)——meta标签作用/SEO优化

    2024-03-27 10:24:02       18 阅读
  4. 前端理论总结(js)——闭包和内存泄漏

    2024-03-27 10:24:02       20 阅读
  5. 前端理论总结(jq)——jQuery九种选择器

    2024-03-27 10:24:02       18 阅读
  6. 机器学习:理论方法应用实践

    2024-03-27 10:24:02       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-27 10:24:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-27 10:24:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-27 10:24:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-27 10:24:02       20 阅读

热门阅读

  1. Go语言base64流式编码在收尾时的一个小坑

    2024-03-27 10:24:02       17 阅读
  2. 正则表达式:深入理解与应用

    2024-03-27 10:24:02       16 阅读
  3. CentOS 7 安装 Git

    2024-03-27 10:24:02       19 阅读
  4. 11. Linux中进程控制细节

    2024-03-27 10:24:02       19 阅读
  5. 【算法】计数排序

    2024-03-27 10:24:02       17 阅读
  6. 算法打卡day18

    2024-03-27 10:24:02       18 阅读
  7. 握手和挥手

    2024-03-27 10:24:02       19 阅读
  8. npm常用命令详解

    2024-03-27 10:24:02       17 阅读
  9. Excel 导入、导出的封装

    2024-03-27 10:24:02       20 阅读
  10. 【go-工具】pprof

    2024-03-27 10:24:02       15 阅读