toArray的巧妙实现

主要是借助了原生slice的方法。

    var arr = {
        0:'1',
        1:'2',
        2:'3',
        length:3
    };
    function toArray(arr){
        return [].slice.call(arr, 0);
    }
    console.log(toArray(arr));

除此外,我们也可以这样实现

    function makeArray(arr){
        if(!arr) return [];
        var length = arr.length || 0, results = new Array(length);
        while(length -- ){
            results[length] = arr[length];
        }
        return results
    }

 

posted on 2014-07-08 23:52  violinxliu  阅读(205)  评论(0编辑  收藏  举报