写一个方法将DOM里的类数组对象转换为数组
在前端开发中,我们经常遇到类数组对象(array-like objects),比如 NodeList 和 HTMLCollection。这些对象具有 length 属性和索引元素,但它们并不是真正的数组,所以它们没有数组的方法,如 map()、filter() 等。为了使用这些方法,我们通常需要将这些类数组对象转换为真正的数组。
以下是一个简单的方法,使用 Array.from() 来将类数组对象转换为数组:
function convertArrayLikeToArray(arrayLike) {
    return Array.from(arrayLike);
}
你可以这样使用这个方法:
// 假设你有一个包含多个 div 元素的页面
const divs = document.querySelectorAll('div');
// divs 是一个 NodeList,它是一个类数组对象
console.log(divs); // NodeList(3) [div, div, div]
console.log(Array.isArray(divs)); // false
// 使用我们的方法将其转换为数组
const divsArray = convertArrayLikeToArray(divs);
console.log(divsArray); // [div, div, div]
console.log(Array.isArray(divsArray)); // true
现在 divsArray 是一个真正的数组,所以你可以使用所有的数组方法,如 map()、filter() 等。
 
                    
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号