js 中Array.concat()实现方法

concat() 方法用于连接两个或多个数组。
该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

arrayObject.concat(arrayX,arrayX,......,arrayX)

返回一个新的数组。该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的。如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。

Array.prototype.myConcat = function() {
            var arr = JSON.parse(JSON.stringify(this)); // 用JSON可以深度拷贝数组
            for (var i = 0; i < arguments.length; i++) {
                var argo = arguments[i]; 
                for ( var j = 0; j < argo.length; j++ ) {
                    arr.push(argo[j]);
                }
            };
            return arr;
        }
        var arr1 = [1,2,3], arr2 = ['a','b','c'];
        console.log("arr1.myConcat(arr2)":arr1.myConcat(arr2));
        console.log("arr1":arr1);
        console.log("arr2":arr2);
arr1.myConcat(arr2):[1, 2, 3, "a", "b", "c"]
arr1:[1, 2, 3]
arr2:["a", "b", "c"]

你可能感兴趣的:(Javacript,Array)