Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Đếm số đối tượng có cùng key trong mảng JavaScript

Cho mảng đối tượng user:

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" } 
];

Viết hàm trả về object ánh xạ name → số lượng đối tượng có name đó.

Kết quả: { "aaa": 2, "bbb": 1, "ccc": 1 }

Ví dụ

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));

Kết quả

Kết quả in ra console:

{ aaa: 2, bbb: 1, ccc: 1 }