zoukankan      html  css  js  c++  java
  • 数组的合并

    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
  • 相关阅读:
    hdu4291 A Short problem
    UVA
    HDU
    Be Geeks!
    HDU
    hdu6559 The Tower
    胜利大逃亡(续) + Maze
    Stealing Harry Potter's Precious
    hdu5172 GTY's gay friends
    Log Concave Sequences Gym
  • 原文地址:https://www.cnblogs.com/maxiag/p/11169007.html
Copyright © 2011-2022 走看看