2 回答

TA貢獻1854條經驗 獲得超8個贊
您的問題不清楚,但這里有一個使用 .它還跟蹤遇到的每個鍵的總數,以防數組中并非所有對象都具有相同的鍵。您希望結果數組采用的格式尚不清楚,但我展示了一個根據調用結果計算平均值的示例。reduce()reduce()
const arr = [
{count1: 3, count2: 2},
{count1: 4, count2: 10},
{count1: 3, count3: 2}
];
const sumObj = arr.reduce((a, o) => (
Object.entries(o).forEach(([k, v]) => (
a[k] = {...a[k] ?? {sum: 0, total: 0}}
, a[k]['sum'] += v
, a[k]['total'] += 1)
), a), {});
console.log(sumObj);
const averageArr = Object.entries(sumObj).map(([k, {sum, total}]) => ({key: k, average: sum/total}));
console.log(averageArr);

TA貢獻1796條經驗 獲得超7個贊
您可以使用map和reduce,就像給定多個鍵一樣:
const exampleArray = [{swag: 3, count: 2}, {swag: 4, count: 10}];
// converting into array with only the key you want to use
const countArray = exampleArray.map((element) => element.count); // an array with just {count: value} elements in them.
// ... now reduce like normally
添加回答
舉報