Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

So sánh và gộp đối tượng trùng lặp trong mảng JavaScript

Cho mảng đối tượng ổ cứng [{size, count}]. Gộp các đối tượng cùng size, cộng dồn count.

Ví dụ

const drives = [    {size:"900GB", count:3},    {size:"900GB", count:100},     {size:"1200GB", count:5},    {size:"900GB", count:1} ]; const groupDrives = (arr = []) => {    const map = drives.reduce((map, e) => {       if (e.size in map) map[e.size].count += e.count       else map[e.size] = e          return map;    }, {})    const result = Object.keys(map).map(function (k) {       return this[k]    }, map);    return result; } console.log(groupDrives(drives));

Kết quả

[ { size: '900GB', count: 104 }, { size: '1200GB', count: 5 } ]