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 :

[sans doute bete] transformer une chaine en variable.


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Points : 18
    Points
    18
    Par défaut [sans doute bete] transformer une chaine en variable.
    Bonjour tlm , voila mon problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var qttproduit1 = 1;             //nombre
    var qttproduit2 = 3;             //nombre
    var identifiant = "produit1" 
    //ou 
    var identifiant = "produit2";   //chaine, change selon l'évènement
    je veux obtenir au final

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    quantite = qttproduit1;        
     //ou :
    quantite = qttproduit2;       //selon l'évènement
    //donc
    quantite = "qtt"+identifiant;
    sauf que si je fais ça évidement quand je fais un alert(quantite); j'obtiens la chaine "qttproduit1" ou "qttproduit2" et nom pas 1 ou 3.

    D'ou ma question, comment transformer une chaine en nom de variable?

    Merci d'avance, j'espère avoir été clair

  2. #2
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 161
    Points : 185
    Points
    185
    Par défaut
    Tu peux essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    window['identifiant'] = 1;
    quantite = window["qtt"+identifiant];
    alert(quantite);

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Points : 18
    Points
    18
    Par défaut
    Nikel merci beaucoup, et ça marche aussi en faisant simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    qttproduit1 = 6;
    identifiant = "produit1";
    quantite = window["qtt"+identifiant];
    alert(quantite);
    A l'ecran : 6.

    Je met résolu mais je comprend pas du tout, c'est quoi window[] stp?

    Merci en tout cas

  4. #4
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 161
    Points : 185
    Points
    185
    Par défaut
    C'est un moyen détourné pour créer des variables globales.
    Par exemple quand tu fait un
    en dehors de toute fonction, tu cree une variable globale.
    Tu aurais aussi pu faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    window.mavar = 10;
    window['mavar'] = 10;
    Ces écritures sont équivalentes.

    window est l'objet "racine" qui contient toutes les variables globales de la page web.

    Edit: attention quand tu fais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    quantite = window["qtt"+identifiant];
    tu copie juste la valeur de la variable nommée "qtt"+identifiant dans quantite, ça ne cree pas un alias de la variable.

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Points : 18
    Points
    18
    Par défaut
    ok merci beaucoup je connaissait pas l'ecriture entre crochet qui été équivalente à window.blabla

    Citation Envoyé par poof65
    Edit: attention quand tu fais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    quantite = window["qtt"+identifiant];
    tu copie juste la valeur de la variable nommée "qtt"+identifiant dans quantite, ça ne cree pas un alias de la variable.
    Oui, c'est bien ça qui m'est si utile presentement

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

Discussions similaires

  1. [XL-2007] Transformer une chaine dans une cellule en une variable
    Par apt dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/02/2015, 22h12
  2. Réponses: 5
    Dernier message: 02/06/2010, 12h12
  3. Réponses: 1
    Dernier message: 13/06/2007, 13h14
  4. Réponses: 3
    Dernier message: 12/06/2006, 11h18
  5. Réponses: 14
    Dernier message: 01/03/2006, 08h32

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