fengchen753951 2021-06-22 17:04 采纳率: 28.6%
浏览 1304
已结题

js 数组对象 判断某个属性值是否相同,另外某个属性值 相加

var arr = [
    {
        name: 张三,
        sum: 2
    },
    {
        name: 张三,
        sum: 7
    },
    {
        name: 李四,
        sum: 4
    },
    {
        name: 李四,
        sum: 5
    },
    {
        name: 李四,
        sum: 6
    },
    {
        name: 王五,
        sum: 4
    },
]

判断  name 是否相同  相同  sum值 就相加 

  • 写回答

2条回答 默认 最新

  • 关注
    var arr = [
        {
            name: "张三",
            sum: 2
        },
        {
            name: "张三",
            sum: 7
        },
        {
            name: "李四",
            sum: 4
        },
        {
            name: "李四",
            sum: 5
        },
        {
            name: "李四",
            sum: 6
        },
        {
            name: "王五",
            sum: 4
        },
    ]
    var obj = {};
    arr.forEach(function(v, i){
    	if (v.name in obj) {
    		obj[v.name]+=v.sum;
    	} else {
    		obj[v.name]=v.sum;
    	}
    });
    console.log(obj);
    

    如果对你有帮助,可以给我个采纳吗,谢谢!! 点击我这个回答右上方的【采纳】按钮
     

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月25日

悬赏问题

  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员