第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

js 對(duì)象數(shù)組中相同的key ,value值相加

js 對(duì)象數(shù)組中相同的key ,value值相加

達(dá)令說(shuō) 2019-03-19 15:14:40
var arry= [    {key:'a',value:2},    {key:'a',value:2},    {key:'a',value:2},    {key:'b',value:8}]期望得到結(jié)果:var newArr =[    {key:'a',value:6},    {key:'b',value:8}]
查看完整描述

8 回答

?
狐的傳說(shuō)

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊

var array = [

    {key: 'a', value: 2},

    {key: 'a', value: 2},

    {key: 'a', value: 2},

    {key: 'b', value: 8}

];

var newArr = [{key:array[0].key, value: 0}];

array.forEach((item, index)=>{

    newArr.forEach((item2, index2) => {

        if (item.key == item2.key) {

            newArr[index2].value += item.value;

        } else {

            newArr.push(item);

        }

    })

});

console.log(newArr);


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
偶然的你

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊

var arry= [

    {key:'a',value:2},

    {key:'a',value:2},

    {key:'a',value:2},

    {key:'b',value:8}

]


let result = {};

array.forEach(item => {

    if(result[item.key]){

        result[item.key] += item.value;

    }else{

        result[item.key] = item.value;

    }

})


let s = [];

for(let k in result){

    s.push({key:k,value:result[k]});

}


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
胡說(shuō)叔叔

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超8個(gè)贊

Array.prototype.reduce 了解一下。


array.reduce((resp, obj)=> {

    var originObj = resp.find(item => item.key === obj.key);

    if (originObj) {

        originObj.value+= obj.value;

    } else {

        resp.push(obj)

    }

    return resp;

}, [])


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
開(kāi)滿天機(jī)

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊

function keyPlusValue(arr) {

  const result = arr.reduce((obj, item) => {

    if (!obj[item.key]) {

      obj[item.key] = 0

    }

    obj[item.key] += item.value

    return obj

  }, {})

  return Object.keys(result).map(key => ({key: key, value: result[key]}))

}

console.log(keyPlusValue(arr))


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
喵喔喔

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊

這是我當(dāng)時(shí)解決的方案


var arry =[

     {name:'a',value:2},

     {name:'a',value:2},

     {name:'a',value:2},

     {name:'b',value:8}

     

     ]

        var temp = {};var data=[];

        for(var i in arry) {

            var key= arry[i].name;

            if(temp[key]) {

                temp[key].value = temp[key].value + arry[i].value;

                temp[key].name = arry[i].name;

            } else {

                temp[key] = {};

                temp[key].value = arry[i].value;

                temp[key].name = arry[i].name;

            }

            

        }

        console.log(temp)


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
Qyouu

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊

var newArr = [...arry.reduce((m, x) => m.set(x.key, (m.get(x.key) || 0) + x.value), new Map())]

  .map(([key, value]) => ({ key, value }))


查看完整回答
反對(duì) 回復(fù) 2019-03-28
?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊

var arry= [


        {key:'a',value:2},

        {key:'a',value:2},

        {key:'a',value:2},

        {key:'b',value:8}

    ]

    let target = [];

    let keysArr =[...new Set( arry.map(item=>item.key))]  ;


    keysArr.forEach(item=>{

       const  arr = arry.filter(keys=>keys.key == item);

       const sum = arr.reduce((a,b)=>a+b.value,0)

        target.push({

            key:item,

            value:sum

        })

    })

    console.log(  target )


查看完整回答
反對(duì) 回復(fù) 2019-03-28
  • 8 回答
  • 0 關(guān)注
  • 4037 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)