L'objet Array- les tableaux


Un tableau javascript est une liste de références ou de valeurs à d'autres objets (des données par exemple) ordonnée  .
Un tableau peut contenir une liste de données numériques, ou alphanumériques.  Il est possible de manipuler les tableaux comme une entité unique ou d'accéder à chacun des index qui le constitue.
Il est bien sûr possible de créer ses propres tableaux mais javascript propose l'accès à de nombreux objets prédéfinis qui sont agencés en tableaux.

Il y a plusieurs façons de créer un nouveau tableau :

tableau1 = new Array(4) ; : crée un nouveau tableau contenant 4 éléments non définis

tableau2 = new Array ("jacques","paul","jean","marcel") crée un tableau contenant 4 éléments définis

tableau3 = new Array(); // crée un tableau vide
    tableau3 [0]= "poireau"; //déclaration du contenu élément par élément
    tableau3 [1]= "carottes";
    tableau3 [2]= "potiron";
    tableau3 [3]= "courgette";

Tout comme les chaînes, les tableaux ont une propriété length qui renvoie le nombre d'éléments qui le constitue.
   table = new Array(30);
   document.write (table.length); // renvoie 30

On accède aux éléments d'un tableau en appelant la variable associée à l'indice recherché
document.write(tableau3[2]);    // affiche potiron

Si on veut lire tous les éléments d'un tableau on peut bien sûr appeler chacun des indices.
lire_tableau3 = tableau3 [0]+ "," + tableau3 [1] +","+ tableau3 [2] +"," + tableau3 [3];
document.write(lire_tableau3);    // affiche poireau,carotte,potiron,courgette

NB :Il serait beaucoup plus judicieux de se souvenir du travail sur les boucles pour automatiser la lecture de tout le tableau !
Dans ce cas la boucle for ... in correspond parfaitement et avec une syntaxe très simple

for (i in tableau3){
document.write (tableau3[i] + "<br />");     // lit toutes les entrées du tableau
}

Les méthodes de l'objet Array :

METHODE DESCRIPTION EXEMPLE
concat() Concaténation de deux tableaux list1 = new Array(1,2,3,4,5); list2 = new Array(6,7,8,9);
listotal= list1.concat(list2);
join() Convertit un tableau en une chaîne de caractères. L'argument indique le séparateur list1 =new Array(1,2,3,4,5);
listChaîne= list1.join("-"); // affiche 1-2-3-4-5
pop() Supprime le dernier élément d'un tableau et renvoi la valeur de l'élément supprimé list1 = new Array(1,2,3,4,5);
suppr = list1.pop();
document.write(suppr); // renvoie 5
push() Ajoute des éléments à la fin du tableau et renvoi le contenu de la propriété length Array.pop("élément1","élément2")
reverse() Inverse l'ordre des éléments d'un tableau    
shift() Supprime le premier élément d'un tableau et renvoi la valeur de l'élément supprimé Array.shift()
slice() Extrait des éléments d'un tableau et renvoie un nouveau tableau avec ces éléments. Cette méthode nécessite deux arguments. rang du premier élément à extraire, rang non inclusif de l'élément qui suit le dernier extrait.    
sort() Classe les éléments d'un tableau en ordre croissant et alphanumérique par défaut. Pour d'autre sorte de tri il est nécessaire de définir une fonction et de la passer en argument de la methode sort    
unshift() Insère au début d'un tableau les éléments mentionnés en argument


© Emmanuel Besnard, octobre 2004