const users = [{
'name': '李磊',
'age':13,
'sex':"男"
}, {
'name': '战三',
'age':22,
'sex':"男"
}, {
'name': '李辉',
'age':12,
'sex':"女"
}];
console.log(countBy(users, (u) => u.sex));
console.log(countBy(users, (u) => u.age));
console.log(countBy(users, (u) => u.name.length));
console.log(countBy(users, (u) => (u.age >= 18 ?'成年': '未成年')));
function countBy(array, generateKey) {
const result = {};
for (const u of array) {
const key = generateKey(u);
if (result[key]) {
result[key]++;
} else {
result[key] = 1;
}
}
return result;
} 网友回复


