JavaScript实现统计网站中,出现次数最多的3个元素并打印
代码实现
let a = [...document.getElementsByTagName("*")].map(value => value.tagName);
function getMaxEle(iter, amount = 1) {
// 统计出现个数的对象
let tagCount = {};
// 假设排行前amount个的元素已经产生
let maxCount = [...new Array(amount)].map(v => ({"count": 0}));
// 遍历可迭代对象
iter.forEach(function (tagName) {
// 如果该标签名称已经出现过则加一,否则就是一
tagCount[tagName] = ++tagCount[tagName] || 1;
// 遍历maxCount,查看当前tagName的标签出现数量是否符合前几的资格,如果满足添加到相应位置
for (let i = 0; i < maxCount.length; i++) {
if (tagCount[tagName] > maxCount[i]["count"]) {
maxCount[i]["tag"] = tagName;
maxCount[i]["count"] = tagCount[tagName];
break;
}
}
});
return {
// 返回统计结果
maxCount, tagCount
};
}
console.log(getMaxEle(a, 3));
本文标题:JavaScript实现统计网站中,出现次数最多的3个元素并打印
本文链接:https://www.haomeiwen.com/subject/mkggyhtx.html
网友评论