減少和合並物件集合的最佳方法是什麼——JavaScript?
減少和合並物件集合的最佳方法是:使用 Object.values() 的概念結合 reduce()。
以下是物件:
var details = [
{ studentId: 10, marks: 75, studentName: "John" },
{ studentId: 10, marks: 75, studentName: "John" },
{ studentId: 11, marks: 98, studentName: "Bob" }
];示例
以下是減少和合並的程式碼:
var details = [
{ studentId: 10, marks: 75, studentName: "John" },
{ studentId: 10, marks: 75, studentName: "John" },
{ studentId: 11, marks: 98, studentName: "Bob" }
];
output = Object.values(details.reduce((value, object) => {
if (value[object.studentId]) {
['marks'].forEach(key => value[object.studentId][key] = value[object.studentId][key] + object[key]);
} else {
value[object.studentId] = { ...object };
}
return value;
}, {}));
console.log(output);要執行以上程式,請使用以下命令:
node fileName.js.
此處,我的檔名是demo237.js。
輸出
輸出如下所示:
PS C:\Users\Amit\javascript-code> node demo237.js
[
{ studentId: 10, marks: 150, studentName: 'John' },
{ studentId: 11, marks: 98, studentName: 'Bob' }
]
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP