如何遍历HTMLCollection

11,147 阅读1分钟

方法一 for of

使用 for of 即可遍历HTMLCollection,可按下f12在当前浏览器尝试如下例子

var script = document.getElementsByTagName('script');
for (let i of script ){
    console.log(i);
}

结果如下

script.png

方法二 for循环

对于不支持for of情况下,兼容性更好

for (var i = 0; i < script.length; i++ ){
    console.log( script[i] );
}

不要使用for in迭代nodeList或HTMLCollection

若使用 for in 则会出现意想不到的结果

for ( i in script ){
    console.log(i);
}

结果如下

forin.png

这是因为for in是用来迭代一个对象的属性,所以结果里输出了lenth,item等属性