This function counts the number of objects in an array that have a specified property value.
JavaScript:
let countByProperty = (arr, prop, value) => arr.filter(obj => obj[prop] === value).length;
// Example
console.log(countByProperty([{a:1, b:2}, {a:1, b:3}, {a:2, b:4}], 'a', 1)); // 2
console.log(countByProperty([{x:'yes', y:'no'}, {x:'no', y:'yes'}, {x:'yes', y:'yes'}], 'x', 'yes')); // 2
TypeScript:
let countByProperty = (arr: any[], prop: string, value: any): number => arr.filter(obj => obj[prop] === value).length;
// Example
console.log(countByProperty([{a:1, b:2}, {a:1, b:3}, {a:2, b:4}], 'a', 1)); // 2
console.log(countByProperty([{x:'yes', y:'no'}, {x:'no', y:'yes'}, {x:'yes', y:'yes'}], 'x', 'yes')); // 2