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; }
网友回复