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 :

référence à un objet par son nom de variable


Sujet :

JavaScript

  1. #1
    Invité
    Invité(e)
    Par défaut référence à un objet par son nom de variable
    Bonjour, voilà j'ai un problème fort simple:

    j'ai créé un objet que j'instancie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var obj = new MonObjet(id);
    dans un div, je récupère le nom de la variable(obj) sur l'event click.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var nom_objet = $('divclique').getProperty('rel');
    Maintenant il faudrait que je lance une méthode de mon objet, sauf que je ne sais pas comment faire référence à un objet à partir de son nom de variable (comme le $$varname de php en somme).

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bon, en fait je suis du coup passé par un tableau d'objet.
    Comme ca je recherche dans le tableau l'id de mon objet.
    Mais je reste quand meme curieux de savoir s'il existe une fonction qui permette de d'invoquer un objet par son nom de variable.

  3. #3
    Invité
    Invité(e)
    Par défaut
    PS:J'ai utilisé la technique d'écrite sur ce site http://www.alti.info/post/2007/07/15...ses-Javascript

  4. #4
    Membre actif Avatar de nod__
    Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 226
    Points
    226
    Par défaut
    le mieux c'est d'utiliser un objet qui englobe tout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var constructeurs = {
     "monObjet" : function (id) {},
     "monObjet2": function (truc) {}
    };
     
    var monObjet = new constructeurs[mon_objet]("tonid");

    C'est moche et potentiellement casse gueule : tu peux faire aussi, sans rien changer ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var monObjet = new window[mon_objet]("tonid");

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Je ne comprends pas bien la finalité.
    C'est pas se compliquer la vie pour pas grand chose là ?

    Est-ce que ceci ne suffirait pas ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var GLOBAL = {};
    . . .
    GLOBAL.obj1 = new MaClasse();
    // ou
    GLOBAL['obj1'] = new MaClasse();
    et ensuite, bien sur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    GLOBAL.obj1.methode();
    // ou
    GLOBAL['obj1'].methode();
    Ce qui donnerait, avec le premier exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var monObjet = $('divclique').getProperty('rel');
    GLOBAL[monObjet].methode()
    // Ou tout simplement
    GLOBAL[$('divclique').getProperty('rel')].methode();
    Ca, c'est franchement à déconseiller :
    http://www.alti.info/post/2007/07/15...ses-Javascript
    J'en reviens pas de la méthode 'getByVar1()'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Selectionner un objet par son nom
    Par cricrides dans le forum VB.NET
    Réponses: 4
    Dernier message: 16/12/2008, 11h00
  2. Appeler un objet crée dynamiquement par son nom
    Par gomit85 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 17/05/2008, 17h11
  3. Récupérer objet par son nom dans une chaîne
    Par peijnoob dans le forum C#
    Réponses: 7
    Dernier message: 14/02/2008, 16h47
  4. Réponses: 3
    Dernier message: 16/07/2007, 21h47
  5. Recherche d'un objet 'window' par son nom
    Par herve91 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/02/2007, 16h54

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