面试的时候,需要将类数组对象转变成数组,记录一下方法。
常常在操作dom时,获取的是类数组对象,所以不能直接利用数组的方法。
- ES6语法 Array.from()
let arr=Array.from(list);
- 利用原型链上的方法Array.prototype.slice.call
let p=document.getElementsByTagName('p');
p.forEach(item=>{
item.addEventListener('click',()=>{
console.log(item.innerHtml)
})
})
用类数组遍历是报错的,所以需要转为真正的数组
let p=document.getElementsByTagName('p');
p=Array.prototype.slice.call(p);
p.forEach(item=>{
item.addEventListener('click',()=>{
console.log(item)
})
})
3.利用[…]解构方法转化成数组
let p=document.getElementsByTagName('p');
p=[...p]
p.forEach(item=>{
item.addEventListener('click',()=>{
console.log(item)
})
})```