js真伪数组转换

真伪数组转换

<body>
    <div>a</div>
    <div>a</div>
    <div>a</div>
    <script>
        
        // 将伪数组转成真数组
        let a = document.querySelectorAll('div');   // 此为系统自带的伪数组
        let arr1 = [].slice.call(a);
        console.log(arr1)

        // 将真数组转成伪数组
        let obj = {};
        let arr2 = [1,2,3];     
        [].push.apply(obj,arr2)
        // console.log(obj)
        
		
    </script>
</body>
另外,伪数组转真数组还有这种方法,但在IE8及以下会报错,故推荐上面的方法
		// 此方法也可伪数组转真数组,但在IE8及以下会报错
        var arr = [];
        var obj = {
            0:'ldt',
            1:18,
            2:'女',
            length:3
        };
        [].push.apply(arr,obj);
        // console.log(arr);

在这里插入图片描述

但该方法在IE8及以下可将系统自带的伪数组转成真数组
var a = document.querySelectorAll('div');
var arr = [];
[].push.apply(arr,a);   
console.log(arr);
发布了13 篇原创文章 · 获赞 4 · 访问量 4575

猜你喜欢

转载自blog.csdn.net/Xyouzi/article/details/104185675