【工具方法】页面出现次数最多的标签

4/3/2021 面试编程能力

# 步骤

  1. 获取页面所有标签
  2. 哈希表统计计数
  3. 遍历一趟哈希表,取出最大 tag

# 代码实现

function getFrequentTag () {
  const tags = [].map.call(
    document.querySelectorAll('*'), 
    node => 
      node.tagName.toLowerCase()
  )
  const map = tags.reduce((o, tag) => {
    o[tag] = o[tag] ? o[tag] + 1 : 1
    return o
  }, {})
  const list = Object.entries(map)
  const targetItem = list.reduce((maxTimeItem, item) => {
    return item[1] > maxTimeItem[1] ? item : maxTimeItem
  })
  return targetItem[0]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 测试一下

getFrequentTag()
1
Last Updated: 4/8/2021, 12:53:45 PM