数组深拷贝和随机

//deep拷贝

    deepCopy:function(o) {

        if (o instanceof Array) {

            var n = [];

            for (var i = 0; i < o.length; ++i) {

                n[i] = this.deepCopy(o[i]);

            }

            return n;

        } else if (o instanceof Object) {

            var n = {}

            for (var i in o) {

                n[i] = this.deepCopy(o[i]);

            }

            return n;

        } else {

            return o;

        }

    },

    //随机排序

    shuffle:function (arr){

        var arr1 = this.deepCopy(arr);

        var len = arr1.length;

        for(var i = 0; i < len - 1; i++){

            var idx = Math.floor(Math.random() * (len - i));

            var temp = arr1[idx];

            arr1[idx] = arr1[len - i - 1];

            arr1[len - i -1] = temp;

        }

        return arr1;

    },

你可能感兴趣的:(数组深拷贝和随机)