Nom de variable

Résolu
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 - 26 juin 2007 à 11:43
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 - 26 juin 2007 à 14:21
Bonjour !

Je sais que le titre n'est pas clair mais je me demandais si on pouvait faire l'équivalent en javascript de $$variable en php.

C'est à dire que si:

var type = "table";

je voudrais que d'une façon ou d'une autre type[0] me renvoie le contenu de table[0].
Ce qui m'éviterait de faire if (type = = table) ....

Merci !

7 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 juin 2007 à 13:24
ah... dans une fonction !

<script type="text/javascript">
var tableau = 'tadaaa';
function ex()
{   var nom = 'tableau';
    return ( window[nom] );
}
alert(ex());
</script>

je n'ai pas regardé ( cherché ) pour utiliser tableau si c'est une variable locale
ça ne doit pas "être loin" si nécessaire...

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 juin 2007 à 11:56
Bonjour,

    pas sûr de répondre...   une variable de variable ?

        var tutu = "toto";
        var titi ="tutu";
        alert(window[titi]);

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
26 juin 2007 à 12:32
Bonjour Bultez !

Oui je pense que ça pourrait ressembler à ça mais ça ne marche pas.

Tu as bien compris ma question, mais pour être parfaitement clair :

en php :

$tableau = 'tadaaa';
$nom = 'tableau';

echo $$nom;      ->  renvoie 'tadaaa'
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 juin 2007 à 12:53
ça fonctionne parfaitement ( IE, FF, Opera, Safari, K-Meleon ... )
var tableau = 'tadaaa';
var nom = 'tableau';
alert ( window[nom] );
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
26 juin 2007 à 13:05
Tiens ?? Moi ça ne marche ni sous IE ni FF, j'ai essayé de placer les trois lignes aussi bien à l'intérieur d'une fonction (ce dont j'ai besoin) que dans le window.onload, dans les deux cas ça me donne undefined.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 juin 2007 à 13:38
il reste bien sûr eval... mais je n'aime pas trop.
pas simple la "syntaxe" pour une variable locale !
si tu trouves...

<script type="text/javascript">
function ex()
{    var tableau = 'tadaaa';
     var nom = 'tableau';
     return ( eval(nom) );
}
alert(ex());
</script>

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
26 juin 2007 à 14:21
Je ne m'en sors pas ! En dehors des fonctions ça va, mais sinon il s'emmêle les pinceaux, j'ai l'impression qu'avec window il me transforme des chaines en tableau... bon, comme ça commence à me donner mal à la tête; je vais en rester à un simple switch !

En tout cas merci beaucoup Bultez !
0
Rejoignez-nous