Javascript合并两个/多个数组的几种方式整理

2021-06-09 855点热度 0人点赞 0条评论

Javascript合并两个数组的几种方式整理

  1. 利用concat方法
    var array1 = ['Tom', 'Jerry'];
    var array2 = ['Terry']
    var combined = array1.concat(array2);
    # ["Tom", "Jerry", "Terry"]
    
    // concat还可以接收多个参数,合并多个数组:
    var combined2 = [].concat(array1, array2);

    concat会生成一个新的数组,原来的两个数组不改变

  2. Spead ES6新语法,同样的,生成一个新的数组,原来的两个数组不改变
    var array1 = ['Tom', 'Jerry'];
    var array2 = ['Terry']
    const combined = [...array1, ...array2];
    // ["Tom", "Jerry", "Terry"]
  3. 利用push方法(也要使用Spread ES6语法) 把A数组合并到B数组,原来B的内容发生改变
    var array1 = ['Tom', 'Jerry'];
    var array2 = ['Terry']
    // push返回的结果是array2的长度
    const result = array2.push(...array1);
    console.log(result); 
    
    // 这个时候array2的内容是合并后的内容了!
    console.log(array2)
    // ["Tom", "Jerry", "Terry"]
    注意不要直接使用push
    var array1 = ['Tom', 'Jerry'];
    var array2 = ['Terry']
    
    array2.push(array1);
    //这种情况返回的Array是数组中套数组,显然不是我们想要的
    console.log(array2);
    // [["Terry"], "Tom", "Jerry"]
  4. 当然最后还可以利用for循环一个一个push上去,最简单不用动脑筋方式
    var array1 = ['Tom', 'Jerry'];
    var array2 = ['Terry']
    
    for(var i in array1){
        array2.push(array1[i]);
    }
    
    
    console.log(array2); 
    // [["Terry"], "Tom", "Jerry"]

admin

这个人很懒,什么都没留下

文章评论

您需要 登录 之后才可以评论