码迷,mamicode.com
首页 > 编程语言 > 详细

数组的合并

时间:2019-07-11 12:30:56      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:href   ++   cat   接收   cti   school   ons   实现   个数   

concat() 方法是用于连接两个或者多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本
语法:
arrayObject.concat(arrayX,arrayX,.........arrayX)
arrayX: 必需,该参数可以是具体的值,一可以是数组对象,可以是多个
返回值: 返回一个新数组, 该数组时通过把所有arrayxX 参数添加到 arrayObject中生成的, 如果要进行 concat()操作的参数是数组, 那么添加的是数组的元素,而不是数组
     var a = [1, 2, 3, 4, 5]
    var b = [‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]
    var c = a.concat(b) 
结果: (10) [1, 2, 3, 4, 5, "a", "b", "c", "d", "e"]

 

合并俩个数组并去重
let arr1 = [1, 1, 2, 3, 6, 9, 5, 5, 4]
    let arr2 = [1, 2, 5, 4, 9, 7, 7, 8, 8]
    function uniqueArr(arr1,arr2) {
        //合并两个数组
        arr1.push(...arr2)//或者arr1 = [...arr1,...arr2]
        //去重
        let arr3 = Array.from(new Set(arr1))//let arr3 = [...new Set(arr1)]
        console.log(arr3) 
    }

   uniqueArr(arr1,arr2)

 

ES5实现
var arr1 = [1, 1, 2, 3, 6, 9, 5, 5, 4]
    var arr2 = [1, 2, 5, 4, 9, 7, 7, 8, 8]
    function uniqueArr(arr1, arr2){
        var arr3 = arr1.concat(arr2)
        var arr4 = []
        for(var i=0,len=arr3.length; i<len; i++) {
            if(arr4.indexOf(arr3[i]) === -1) {
                arr4.push(arr3[i])
            }
        }
        console.log(arr4)
    } 
    uniqueArr(arr1, arr2)

new Set()接收一个数组, 并且数组中的元素是唯一的, Array.from()能把伪数组转化为真数组

 
 
 
8

数组的合并

标签:href   ++   cat   接收   cti   school   ons   实现   个数   

原文地址:https://www.cnblogs.com/maxiag/p/11169007.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!