JavaScript如何统计对象数组中属性值的重复出现次数
错误原因
你现有代码的逻辑完全偏离需求:Object.keys(字符串).length 计算的是字符串本身的字符个数,比如meryem共6个字符所以输出6,sara共4个字符所以输出4,和该值在数组中的重复出现次数没有任何关系。
正确统计代码
要实现按Departement属性值统计出现次数,直接初始化计数器对象遍历累加即可,无需额外做JSON序列化反序列化操作:
import departement_list from "../data/departements-list.json"; // 初始化空计数器对象 const depCount = {}; // 遍历数组累加计数 for (const item of departement_list) { const currentDep = item.Departement; depCount[currentDep] = (depCount[currentDep] || 0) + 1; } // 打印统计结果 for (const [depName, count] of Object.entries(depCount)) { console.log(depName, " = ", count); }
运行输出结果
meryem = 5 sara = 3 ouss = 3 samati = 9
内容的提问来源于stack exchange,提问作者Meryem ACHEMLAL
相关产品推荐
相关产品推荐

