Js中伪数组转真数组的五种方法

释放双眼,带上耳机,听听看~!

        //需求: 把伪数组转成真数组. 
        //定义一个伪数组. 
        let fakeArr = {
            0: '哈哈',
            1: '嘻嘻',
            2: '嘿嘿',
            3: '呵呵',
            length: 4
        }

        //1.以前的做法. 
        let arr1 = [];
        for (let i = 0; i < fakeArr.length; i++) {
            arr1.push(fakeArr[i]);
        }
        console.log(arr1);

        //现在的做法: 
        //2. push()
        let arr2 = [];
        arr2.push.apply(arr2, fakeArr);
        console.log(arr2);

        //3. concat()
        let arr3 = [];
        let arrNew = arr3.concat.apply(arr3, fakeArr);
        console.log(arrNew);

        //4. slice()
        //假如fakeArr可以调用数组的slice方法, 那就可以返回一个真数组, 
        //并且这个真数组里就拥有fakeArr的所有元素
        //但是很遗憾fakeArr是伪数组,不能调用真数组的slice方法. 
        // let arr = fakeArr.slice(0); //报错了. 
        let arr4 = Array.prototype.slice.call(fakeArr, 0);
        console.log(arr4);

        //5. 如果学了es6 . 
        let arr5 = Array.from(fakeArr);
        console.log(arr5);

内容投诉
JavaScript

JavaScript原生普通自动轮播图之函数封装

2020-7-17 23:10:19

JavaScript

Js中伪数组冒泡排序的两种方法

2020-7-27 18:01:43

搜索