zoukankan      html  css  js  c++  java
  • 对象、数组合并

    通过一个相同的字段在合并两个数组

    var player = [{score: 1,  name: 'Jeff'},{score: 2,  name: 'Jeff',age:18}];
    var player1 = [{score: 1,  name: 'aaa',age:16}];

    根据 score:1 这条件进行合并 如下

    [{score: 1,  name: 'aaa',age:16},{score: 2,  name: 'Jeff',age:18}];

    代码实现:

    var newPlayer = player.concat([]);    
    for ( var i = 0; i <newPlayer.length; i++){
      for ( var j = 0; j <player1.length; j++){
        if(newPlayer[i].score==player1[j].score){
          //对象合并
          newPlayer[i] = Object.assign({}, newPlayer[i], player1[j])              
        }
      }
    }
    console.log(player);    
    console.log(newPlayer);    

    这里有一个小坑,注意一下

    不能使用  var newarr= arr;不然修改新数组时也会修改旧数组  concat() 方法用于连接两个或多个数组

    或者如果你使用对象扩展语法,可以写成:
     var newPlayer = {...player, score: 2};

  • 相关阅读:
    NumPy线性代数
    NumPy矩阵库
    NumPy副本和视图
    NumPy字节交换
    NumPy排序、搜索和计数函数
    NumPy统计函数
    NumPy算数运算
    NumPy数学算数函数
    NumPy
    dp 动规 最佳加法表达式
  • 原文地址:https://www.cnblogs.com/ltt124/p/10132411.html
Copyright © 2011-2022 走看看