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 :

Acc�s a des variables de classes


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �prouv� Avatar de lalouve
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    D�cembre 2004
    Messages
    128
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 128
    Par d�faut Acc�s a des variables de classes
    Bonjour � tous,
    j'esp�re �tre assez concis et parvenir a vous exposer le probl�me (peu �tre d�bile, j'ai pas bcp dormi ces dernires temps ) sur lequel je s�che...

    Plust�t qu'un long blabla un peu de code:
    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
    26
    27
    28
    29
     
    // Voilà la situation :
     
    Classe2 = function(){
      this.var1 = 0;
     
      var _self = this;
    }
     
    Classe2.prototype.methode1 = new function(param){
      // je voudrais ici accéder à Classe2.var1
      // this.var1 et _self.var1 ne fonctionnent pas (non définis...)
    }
     
    Classe1 = function(){
      this.var1 = 0;
      this.var2 = new Classe2();
     
      var self = this;
     
      self.methode2(self.var2._self.methode1(param));
    }
     
    Classe1.prototype.methode1 = new function(param){
     
    }
    Class1.prototype.methode2 = new function(fonction, param){
      return (function(){ fonction(param); });
    }
    Voil� pour le principe.
    Je n'arrive donc pas � acc�der aux variables de la Classe2 depuis une de ses methodes... Pourtant il me semble bien que comme elle est instanci�e dans la Classe1 ce devrait �tre possible.

    Merci de votre aide et conseils avis�s!

  2. #2
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Avril 2006
    Messages
    245
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2006
    Messages : 245
    Par d�faut
    Pourquoi prototyper les classes dans ton cas ? Tu devrais essayer de les enlever et de refaire une partie de ton code !

  3. #3
    Membre �prouv� Avatar de lalouve
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    D�cembre 2004
    Messages
    128
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 128
    Par d�faut
    Pour l'h�ritage.

  4. #4
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Avril 2006
    Messages
    245
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2006
    Messages : 245
    Par d�faut
    Essaye de virer les new voici le code correspondant :

    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
    26
    27
    28
    29
     
    // Voilà la situation :
     
    Classe2 = function(){
      this.var1 = 0;
     
      var _self = this;
    }
     
    Classe2.prototype.methode1 = function(param){
      // je voudrais ici accéder à Classe2.var1
      // this.var1 et _self.var1 ne fonctionnent pas (non définis...)
    }
     
    Classe1 = function(){
      this.var1 = 0;
      this.var2 = new Classe2();
     
      var self = this;
     
      self.methode2(self.var2._self.methode1(param));
    }
     
    Classe1.prototype.methode1 = function(param){
     
    }
    Class1.prototype.methode2 = function(fonction, param){
      return (function(){ fonction(param); });
    }

  5. #5
    Membre �prouv� Avatar de lalouve
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    D�cembre 2004
    Messages
    128
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 128
    Par d�faut
    Autant pour moi... Je me suis plant� en �crivant l'exemple ici vite fait.
    Je n'ai pas ces new dans mon code. => Classe.prototype.methode = function(){}

  6. #6
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Avril 2006
    Messages
    245
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2006
    Messages : 245
    Par d�faut
    Et ca marche toujurs pas sans les new ???

Discussions similaires

  1. R�ponses: 5
    Dernier message: 11/10/2007, 17h01
  2. Cr�er des variables de classe dynamiquement
    Par Sebastien13 dans le forum Langage
    R�ponses: 1
    Dernier message: 13/02/2007, 22h00
  3. [POO] Port�e des variables de classe
    Par guidav dans le forum Langage
    R�ponses: 3
    Dernier message: 31/01/2007, 19h27
  4. R�ponses: 4
    Dernier message: 04/06/2006, 16h53
  5. [C++.NET] Acces a des variables
    Par raboin dans le forum VC++ .NET
    R�ponses: 12
    Dernier message: 31/05/2006, 17h28

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