IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Comment fusionner 2 objets en Javascript


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Par d�faut Comment fusionner 2 objets en Javascript
    Bonjour,
    comment fait-on pour fusionner 2 objets en Javascript

    par ex:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    var a={toto1:"AAA", toto2:"BBB"};
    var b={toto3:"CCC"};
    var c = a + b; 
    // je veux c={toto1:"AAA", toto2:"BBB", toto3:"CCC"};
    ou
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    var a={toto1:"AAA", toto2:"BBB", xxx:"XXX"};
    var b={toto3:"CCC", xxx:"YYY"};
    var c = a + b; 
    // je veux c={toto1:"AAA", toto2:"BBB", toto3:"CCC", xxx:"YYY"};
    J'aimerais que l'objet c contienne tous les attributs de a et de b et �ventuellement �crase les attributs de a par celle de b si les 2 objets poss�dent les m�mes attributs.

    Merci.

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    il me semble avoir mis une contribution sur le sujet ...
    Arf je ne retrouve pas ...


    Voici quelques lignes qui pourront sans doute t'inspirer ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    var Tab={"a":1}
    Tab["b"]=2;
     
     
     
    Object.prototype.Length=function(){
    var L=0
    for(key in this){if(this.hasOwnProperty(key) && !( this[key] instanceof Function) ){L++};}
    return L;
    }
     
     
    Object.prototype.Add=function(args){
    for (key in args) { if(args.hasOwnProperty(key) && !(this[key] instanceof Function) ){this[key]=args[key]};
    	}
    }
     
     
    Object.prototype.Dump=function(){
    var dump="[";
    for (key in this){ if(this.hasOwnProperty(key) && !(this[key] instanceof Function) ){dump+=key + " => " + this[key] +";";}
    }
    dump+="]"
    return dump;
    }
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  3. #3
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    Object.prototype.Merge=function(Obj2){
    for (key in Obj2) { if(args.hasOwnProperty(key) && !(this[key] instanceof Function) ){this[key]=Obj2[key]};
    	}
    }
    s'utiliserait comme ceci:

    mais attention c'est destructeur a est modifi�
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  4. #4
    Membre �clair�
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Par d�faut
    Citation Envoy� par SpaceFrog Voir le message
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    Object.prototype.Merge=function(Obj2){
    for (key in Obj2) { if(args.hasOwnProperty(key) && !(this[key] instanceof Function) ){this[key]=Obj2[key]};
    	}
    }
    s'utiliserait comme ceci:

    mais attention c'est destructeur a est modifi�
    Lorsque je fais :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    var a={toto1:"AAA", toto2:"BBB"};
    var b={toto3:"CCC"};
    var c={};
    Object.prototype.Merge=function(Obj2){
    	for (key in Obj2) { 
    		if(args.hasOwnProperty(key) && !(this[key] instanceof Function)){
    			this[key]=Obj2[key]
    		};
    	}
    }
    c.Merge(a);
    c.Merge(b);
    alert(c.toto1);
    j'obtiens une erreur ligne 6 (args inconnu)

    et en faite � quoi sert ce if ?

    Tiens et j'ai remarqu� que Add et Merge c'est la m�me chose

  5. #5
    Membre �clair�
    Inscrit en
    Octobre 2005
    Messages
    908
    D�tails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par d�faut
    avec jQuery, tu peux faire :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var c = jQuery.extend(a, b);
    @+

Discussions similaires

  1. Comment fusionner 2 objets s�rialis�s ?
    Par jp203 dans le forum C++
    R�ponses: 1
    Dernier message: 23/01/2010, 11h09
  2. Comment fusionner plusieurs callback pour un m�me objet graphique
    Par biquet dans le forum Interfaces Graphiques
    R�ponses: 8
    Dernier message: 19/04/2007, 10h39
  3. [servlet][bean]comment r�cup�rer l'objet request
    Par otminou dans le forum Servlets/JSP
    R�ponses: 3
    Dernier message: 27/09/2004, 14h40
  4. Comment mettre plusieurs objets ds un composant ?
    Par Fleury dans le forum Composants VCL
    R�ponses: 7
    Dernier message: 24/05/2003, 17h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo