Partage
  • Partager sur Facebook
  • Partager sur Twitter

fusionner tous les elements d'un tableau

javascript et php

    5 juillet 2019 à 13:40:23

    salut, je procede comme ci-dessous pour fusionner les elements de deux tableaux:

    var target = [{ a: 1, b: 2, d:6 }];
    var source = [{ b: 4, c: 5, d:7 }];
    
    var result = [Object.assign({}, ...target, ...source)];
    
    console.log("result = " + JSON.stringify(result));
    console.log("target = " + JSON.stringify(target));
    console.log("source = " + JSON.stringify(source));

    comment conserver tous les attributs meme ceux qui sont similaires. par exemple d et d. je voudrais avoir tous les attributs des deux tableaux dans le tableau final. je n'ai que le 'd' de la source dans le tableau final.

    • Partager sur Facebook
    • Partager sur Twitter
    A Vaincre sans péril on finit par triompher sans gloire  ->  le Cid de corneille
      5 juillet 2019 à 14:35:22

      Salut,

      c'est impossible tout simplement, tu ne peut pas converver des attributs qui s'appellent pareil, 

      tu peut éventuellement prendre l'un ou l'autre, les concaténer/ajouter, mais tu ne peut pas conserver les deux séparément.

      • Partager sur Facebook
      • Partager sur Twitter
        5 juillet 2019 à 19:21:17

        Bonjour beza88,

        Tu peux faire cela mais je ne sais pas si cela te conviendra

        function arrayOfObjetToArray(aTable){
          var aRes = [];
          for(var i = 0; i < aTable.length; i++){
            aRes = aRes.concat(Object.entries(aTable[i]))
          }
          return aRes;
        }
        
        var target = [{ a: 1, b: 2, d:6 }];
        var source = [{ b: 4, c: 5, d:7 }];
        var targetToArray = arrayOfObjetToArray(target);
        var sourceToArray = arrayOfObjetToArray(source);
        var resultArray = [].concat(sourceToArray,targetToArray);
        
        console.log("targetToArray = " + JSON.stringify(targetToArray));
        //targetToArray = [["a",1],["b",2],["d",6]]
        console.log("sourceToArray = " + JSON.stringify(sourceToArray));
        //sourceToArray = [["b",4],["c",5],["d",7]]
        console.log("resultArray = " + JSON.stringify(resultArray));
        //resultArray = [["b",4],["c",5],["d",7],["a",1],["b",2],["d",6]]
        



        • Partager sur Facebook
        • Partager sur Twitter
        Découvrez les Css avec la zonecss.fr

        fusionner tous les elements d'un tableau

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown