Utilitaires
Jeux
Paroles
Textes
Forum
Livre d'or
Index des forums 

Index des forums


Dossier 

Base de connaissances


Dossier Groupe "Internet / Javascript"
Se connecter
Répondre
Trouver un message :
Rechercher
Jamais inscrit sur ce forum
Identifiant (pseudo) :
Mot de passe :
Courriel :
Ville/pays (facultatif) :
Attention, si vous utilisez Hotmail/Live, vous risquez de ne pas pouvoir vous inscrire car ce fournisseur bloque exagérément les messages.
M'inscrire
Déjà inscrit sur ce forum
Identifiant :
Mot de passe :
Me connecter
Déjà inscrit mais sans mot de passe
Vous avez perdu votre mot de passe ?
Vous pouvez en recevoir un autre en indiquant ci-dessous l'adresse du courriel utilisé lors de l'inscription.
Mon courriel :
Envoyer courriel

Ecriture compacte des tableaux Javascript


Il est possible de déclarer un tableau et de lui affecter en même temps ses valeurs. Cela permet de raccourcir le code et d'accélérer son exécution.
Voici quelques exemples pour les deux types de tableaux possibles en Javascript (indicé et associatif), avec, pour chacun, la façon d'utiliser la commande Eval (je l'utilise pour affecter les valeurs après un appel Ajax).
        
- Tableau indicé : Array (v1, v2)
var tab1=Array(1,'abc');
var tab2=eval('Array(1,\'abc\')');
alert(tab1[1] +'/' +tab2[1]);


- Mais aussi  [v1, v2] (nécessaire quand il n'y a qu'une seule valeur)
var tab1=[1,'abc'];
var tab2=eval('[1,\'abc\']');
alert(tab1[1] +'/' +tab2[1]);


    
- Tableau associatif : {n1:v1, n2:v2}
var tab1={1:'valeur1','abc':'valeur2'};
var tab2=eval('tabTmp={1:\'valeur1\',\'abc\':\'valeur2\'}');
alert (tab1['abc'] + '/' + tab2['abc');

smiley Notez bien le tabTmp. En fait, la fonction eval ne traite pas la chaîne en paramètre comme un tableau mais comme une chaîne. Je n'ai trouvé que cette solution (à moins de mettre la variable déclarée dans le eval).

- Petite particularité que j'utilise souvent : les tableaux indicés associatifs : [ {n1:v1, n2:v2}, {n1:v3, n2:v4} ]
var tab1=[{1:'valeur1','abc':'valeur2'}, {1:'valeur3','abc':'valeur4'}];
var tab2=eval('[{1:\'valeur1\',\'abc\':\'valeur2\'}, {1:\'valeur3\',\'abc\':\'valeur4\'}]');
alert (tab1[1]['abc'] + '/' + tab2[1]['abc']);

el_juky [Administrateur] le 02/04/2009

Citer
© Eric Quillévéré (janvier 2000 - mai 2012) Inspiré d'un design de Zwatla + Lagouache
Valid CSS! Valid HTML 4.01 Transitional