使用 JavaScript 检查数组中有多少个对象具有相同的键
假设我们有一个对象数组,其中包含有关某些用户的一些数据,如下所示 −
const arr = [
{
"name":"aaa",
"id":"2100",
"designation":"developer"
},
{
"name":"bbb",
"id":"8888",
"designation":"team lead"
},
{
"name":"ccc",
"id":"6745",
"designation":"manager"
},
{
"name":"aaa",
"id":"9899",
"designation":"sw"
}
];我们需要编写一个 JavaScript 函数,该函数接收一个这样的数组。然后,我们的函数应该返回一个新对象,其中包含所有 name 属性值,这些值映射到包含该特定 name 属性的计数。
因此,对于上述数组,输出应如下所示 −
const output = {
"aaa": 2,
"bbb": 1,
"ccc": 1
};示例
代码如下 −
const arr = [
{
"name":"aaa",
"id":"2100",
"designation":"developer"
},
{
"name":"bbb",
"id":"8888",
"designation":"team lead"
},
{
"name":"ccc",
"id":"6745",
"designation":"manager"
},
{
"name":"aaa",
"id":"9899",
"designation":"sw"
}
];
const countNames = (arr = []) => {
const res = {};
for(let i = 0; i < arr.length; i++){
const { name } = arr[i];
if(res.hasOwnProperty(name)){
res[name]++;
}
else{
res[name] = 1;
};
};
return res;
};
console.log(countNames(arr));输出
控制台中的输出为 −
{ aaa: 2, bbb: 1, ccc: 1 }
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP