最近看到了一个面试题,觉得很有意思,分享一下。
1、打开任意网站,比如淘宝,在console输入一段代码,统计此页面一共使用了多少种HTML标签
2、统计最多的三种标签
大家可以思考五分钟~
show code
第一题
new Set([...document.querySelectorAll("*")].map(v => v.tagName))
// Set(16) {"HTML", "HEAD", "LINK", "META", "SCRIPT", …}
第二题
Object.entries([...document.querySelectorAll("*")].map(v => v.tagName).reduce((obj, item) => {obj[item] = (obj[item] || 0)+1; return obj}, {})).sort((a,b) => b[1] - a[1]).slice(0, 3)
// (3) [Array(2), Array(2), Array(2)]
// 0: (2) ["DIV", 136]
// 1: (2) ["SPAN", 18]
// 2: (2) ["BUTTON", 17]
over