鍍金池/ 問(wèn)答/HTML/ 如何遍歷一個(gè)數(shù)組,若數(shù)組中對(duì)象值相等,把數(shù)組中的對(duì)象合并

如何遍歷一個(gè)數(shù)組,若數(shù)組中對(duì)象值相等,把數(shù)組中的對(duì)象合并

1.遍歷一個(gè)數(shù)組,若數(shù)組中對(duì)象值相等,把數(shù)組中的對(duì)象合并

//數(shù)組解構(gòu)
var a = [
    {
      date:'2018-7-24',
      value:2
    },
    {
      date:'2018-7-24',
      value:5
    },
    {
      date:'2018-7-25',
      value:5
    },
    {
      date:'2018-7-25',
      value:5
    },
]
//期望結(jié)果
res = [
    {
      date:'2018-7-24',
      value:7
    },
    {
      date:'2018-7-25',
      value:10
    },

]

想破頭還是不會(huì)不知道有沒(méi)有人有比較好的方法,感激不盡!?。?/p>

回答
編輯回答
扯機(jī)薄

怎么最近老是有這種問(wèn)題...

// 創(chuàng)建映射
var map = a.reduce((p, c) => [p[c.date] = p[c.date] || 0, p[c.date] += c.value, p][2], {})
// 獲取映射結(jié)果
var res = Object.keys(map).map(key => [{date: key, value: map[key]}][0])
2017年12月5日 02:49
編輯回答
墻頭草

提問(wèn)之前先思考嘗試, 在搜索相關(guān)問(wèn)題, 如果仍無(wú)頭緒, 再提問(wèn), 提問(wèn)如果能讓人看到你做出的嘗試就非常好了,別人也許會(huì)根據(jù)你的嘗試指出問(wèn)題,而不是給你一個(gè)方法. 嘿嘿

2018年4月9日 03:56
編輯回答
陌南塵

arr.reduce((previousValue, currentValue, currentIndex, arr) => {

})
2017年8月1日 21:01