美文网首页面试那些事
js-统计当前页面使用的标签

js-统计当前页面使用的标签

作者: _静夜听雨_ | 来源:发表于2022-01-18 16:21 被阅读0次

作为前端,你在面试的时候可能会遇到这样一道面试题,随便打开一个网页,让你在控制台统计出当前页面使用最多的标签和数量?

下面我们来一步步进行,go:

1、获取页面所有标签(类数组)

const nodeList = document.getElementsByTagName('*');
image.png

2、获取标签名数组(标签名组成的数组)

const tagNameList = ([...document.getElementsByTagName('*')]).map(v=>v.tagName);
image.png

3、标签种类统计

const tagNameNums = new Set([...([...document.getElementsByTagName('*')])
.map(v=>v.tagName)]);
const len = tagNameNums.size;
image.png

4、reduce统计标签出现的次数

const reduceResult = ([...document.getElementsByTagName('*')])
.map(v=>v.tagName)
.reduce((obj,item)=>{
    obj[item] = obj[item] ? obj[item] + 1 : 1;
    return obj;
},{});
image.png

5、获取entris数组

const reduceResultEntries = Object.entries(reduceResult);
image.png

6、entris数组排序

const sortReduceList = Object.entries(reduceResult).sort((a,b)=>b[1]-a[1]);
image.png

7、输出前三名

console.table(sortReduceList.slice(0,3))
image.png

搞定!!!

相关文章

网友评论

    本文标题:js-统计当前页面使用的标签

    本文链接:https://www.haomeiwen.com/subject/qhbrhrtx.html