如果它具有相同的id,我想將值合并到數(shù)組。我有一個像這樣的對象數(shù)組。[ { id: 'Tony', type: 'hero', favorite: 'Rosie', }, { id: 'Jane', type: 'human', favorite: null, }, { id: 'Tony', type: 'hero', favorite: 'Lisa', }, { id: 'Steve', type: 'hero', favorite: 'Jennie', }, { id: 'Tony', type: 'hero', favorite: 'Jisoo', },]我想將鍵favorite從字符串合并到數(shù)組。我想要像這樣的輸出[ { id: 'Tony', type: 'hero', favorite: ['Rosie', 'Lisa', 'Jisoo'], }, { id: 'Jane', type: 'human', favorite: null, }, { id: 'Steve', type: 'hero', favorite: ['Jennie'], } 我嘗試編寫這樣的代碼:(來自:對象數(shù)組中的相似鍵)var obj = [ { id: 'Tony', type: 'hero', favorite: 'Rosie', }, { id: 'Jane', type: 'human', favorite: null, }, { id: 'Tony', type: 'hero', favorite: 'Lisa', }, { id: 'Steve', type: 'hero', favorite: 'Jennie', }, { id: 'Tony', type: 'hero', favorite: 'Jisoo', }, ]; var holder = {}; const ar = [] obj.forEach(function (d) { if (holder.hasOwnProperty(d.id)) { holder[d.id] = ar.push(holder[d.id] + d.favorite); } else { holder[d.id] = d.favorite; } }); var obj2 = []; for (var prop in holder) { obj2.push({ name: prop, favorite: holder[prop] }); } console.log(obj2);但是輸出是[ { name: 'Tony', favorite: 2 }, { name: 'Jane', favorite: null }, { name: 'Steve', favorite: 'Jennie' } ]我怎樣才能做到這一點(diǎn) ?
如果具有相同的id,如何將數(shù)組對象值合并到數(shù)組
慕斯王
2019-04-25 18:15:47