11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour tout le monde,

j'ai un p'tit soucis et viens ici dans l'espoir de trouver un peu d'aide...

voila:

J'ai créer 2 class en Javascript que j'appèlerai C1 et C2. Dans C1, j'ai une propriété qui est une instance de C2. Mon problème est que dans une méthode de C2, j'aimerai récupérer la valeur d'une propriété de C1, mais je ne sais pas comment faire ...

un peu de code pour mieux comprendre peut etre:



function Class1()
  {
     this.Propriete1 = 10;
     this.Propriete2 = new Class2;
  }

function Class2()
  {
     this.Propriete1 = "aaa";
     this.Propriete2 = "bbb";

     this.Methode1 = function()
        {
         //LA JE VEUX AVOIR ACCES A la PROPRIETE1 de Class1 ?????
        } 

  }



Merci par avance pour toutes juggestion.

cordialement

NiHaoMa[/code]
Modifié par nihaoma (06 Jul 2007 - 16:26)
Salut nihaoma,

je vais peut-être dire un truc que tu sais déjà :


this.Methode1 = function()
{
  var c1p1 = new Class1().Propriete1;
  ...
}


Mais ce ne sera qu'une instance volatile (donc bouffée par le garbage collector), qui ne te retournera que la valeur par défaut de la Propriete 1 de Class1

A moins que tu ne souhaites autre chose ?
Modifié par Ze Nenex (06 Jul 2007 - 21:30)
Tu peux faire :


function Class1() {
     this.Propriete1 = 10;
     this.Propriete2 = new Class2(this);
}

function Class2(o) {
     this.Propriete1 = "aaa";
     this.Propriete2 = "bbb";
     this.Methode1 = function() {
		alert(o.Propriete1);
     }
}

var t = new Class1();
t.Propriete2.Methode1();