使用 JavaScript 按唯一键计数
假设我们有一个对象数组,如下所示 −
const arr = [
{
assigned_user:{
name:'Paul',
id: 34158
},
doc_status: "processed"
},
{
assigned_user:{
name:'Simon',
id: 48569
},
doc_status: "processed"
},
{
assigned_user:{
name:'Simon',
id: 48569
},
doc_status: "processed"
}
];我们需要写一个 JavaScript 函数,它接受一个这样的对象数组。 然后,该函数应计算该对象数组中存在的唯一“用户”属性的数量。
然后,该函数应将所有这些唯一对象放入一个新数组中并返回该数组。
示例
代码如下 −
const arr = [
{
assigned_user:{
name:'Paul',
id: 34158
},
doc_status: "processed"
},
{
assigned_user:{
name:'Simon',
id: 48569
},
doc_status: "processed"
},
{
assigned_user:{
name:'Simon',
id: 48569
},
doc_status: "processed"
}
];
const countUnique = (arr = []) => {
let res = [];
res = arr.reduce(function (r, o) {
let user = o.assigned_user.name;
(r[user])? ++r[user] : r[user] = 1;
return r;
}, {}),
result = Object.keys(res).map(function (k) {
return {user: k, count: res[k]};
});
return res;
}
console.log(countUnique(arr));输出
控制台中的输出为 −
{ Paul: 1, Simon: 2 }
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言
C++
C#
MongoDB
MySQL
Javascript
PHP