HTML标签的相关操作判断

统计HTML标签中以b开头的标签数量

// 实现方式一:
const tags = document.getElementsByTagName('*')
// 要使用数组的方法必须将类数组转为真正的数组
const value = [...tags].filter(item => item.tagName.startsWith('B'))


// 实现方式二:
const $prefixBElements = []
function getElementNum($el) {
    if ($el.tagName.startsWith('B')) {
        $prefixBElements.push($el)
    }
    for (const $child of $el.children) {
        getElementNum($child)
    }
}
getElementNum(document.documentElement);

统计HTML标签中出现次数最多的标签

const tags = document.getElementsByTagName('*');
let map = new Map();
let maxStr = '';
let max = 0;
// 只是使用下标来获取,没有使用数组的方法,所以不需要将类数组转为数组
for(let i = 0; i < tags.length; i++) {
    let value = map.get(tags[i].tagName)
    if(value) {
        map.set(tags[i].tagName, ++value)
    } else {
        map.set(tags[i].tagName, 1);
    }
    if(value > max) {
        maxStr = tags[i].tagName;
        max = value;
    }
}
console.log(`当前最多的标签为 ${maxStr},个数为 ${max}` );

判断DOM标签的合法性

如标签的闭合、span里面不能有div、其他符合HTML标签合法性的规则等
参考

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容