js 遍历对象forEach is not a function [DOM集合--类数组对象转化为数组 ]


js 遍历对象forEach is not a function [DOM集合--类数组对象转化为数组 ]

分析: 出现这种错误原因:

原生js 获取的DOM集合是一个类数组对象,所以不能直接利用[ forEach,map ]遍历,需要进行转换为数组后,才能用数组方法遍历

错误再现:

// 这样会报错
let metaArr = document.getElementsByTagName('meta');
metaArr.forEach((item,index)=>{
    console.log(item);
});

 

 

01) 解决方法01

let metaArr = document.getElementsByTagName('meta');
Array.prototype.forEach.call(metaArr,function (item,index) {
    console.log(item);
});

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM