在数组中使用 JavaScript 查找某个对象属性值的出现次数?
为此,请使用 reduce() 的概念。以下为代码 −
示例
const subjectDetails = [ { subjectId: '101', subjectName: 'JavaScript' }, { subjectId: '102', subjectName: 'Java' }, { subjectId: '103', subjectName: 'JavaScript' } ]; console.log([...subjectDetails.reduce((obj1, obj2) => { if (obj1.has(obj2.subjectName)){ obj1.get(obj2.subjectName).frequency++; } else { obj1.set(obj2.subjectName, { subjectName: obj2.subjectName, frequency: 1 }); } return obj1; }, new Map()).values()]);
要运行上述程序,你需要使用以下命令 −
node fileName.js.
此处,我的文件名是 demo144.js。
输出
这将会产生以下输出 −
PS C:\Users\Amit\JavaScript-code> node demo144.js [ { subjectName: 'JavaScript', frequency: 2 }, { subjectName: 'Java', frequency: 1 } ]
广告