随身笔记
随身笔记

类数组(伪数组)转数组

如果使用:

document.getElementsByTagName('div')  //getElementsByName()同样也是返回nodelist类数组对象

获取到div元素返回来的就是类数组

类数组我们不方便操作,由于它不是数组我们就不能使用数组下的属性去操作它,所以必须转化为数组。

 

证明:

document.getElementsByTagName('div') instanceof Array   //返回false,说明就不是数组

 

转化成数组使用以下方法:

let arr1 = Array.prototype.slice.call(arrayLike);  //最低兼容ie9
let arr2 = [].slice.call(arrayLike); //最低兼容ie9
let arr3 = Array.from(arrayLike);  //兼容性不太好

 

兼容模式:

function realArray(c) {
    try {
        return Array.prototype.slice.call(c);
    } catch (e) {
        var ret = [], i = 0, len = c.length;
        for (; i < len; i++) {
            ret[i] = (c[i]);
        }
        return ret;
    }
}

 

随身笔记

类数组(伪数组)转数组
如果使用: document.getElementsByTagName('div') //getElementsByName()同样也是返回nodelist类数组对象 获取到div元素返回来的就是类数组 类数组我们不方便操作,由于它不是数组…
扫描二维码继续阅读
2017-11-26