Outils pour utilisateurs

Outils du site


cours2012:programmation:td:objets_et_tableaux

Objets et Tableaux

Objets

Un des points forts de JavaScript est la notation "littérale" des objets.

var unePersonne = {
  nom: "son nom",
  prenom: "son prénom",
  age: 42,
  "citation préférée": "honni soit qui mal y pense !"
};
 
//notation pointée
show(unePersonne.nom);
 
//notation indicielle
show(unePersonne["nom"]);
show(unePersonne["citation préférée"]);

Utiliser des objets

exercice

Compléter le code :

var unePersonne = {
  nom: "Dupont",
  prenom: "Jean",
  age: 42,
  "citation préférée": "honni soit qui mal y pense !"
};
var uneAutrePersonne = {
  nom: "Dupond",
  prenom: "Paul",
  age: 11,
  "citation préférée": "la purée c'est cool !"
};
 
function salutation(personne) {
  // …
}
 
print(salutation(unePersonne)); //affiche :
//Bonjour, Jean Dupont. Vous avez 42 ans :
//honni soit qui mal y pense !
print(salutation(uneAutrePersonne)); //affiche :
//Bonjour, Paul Dupond. Vous avez 11 ans :
//la purée c'est cool !

Manipuler des objets

var unePersonne = {
  nom: "Dupont",
  prenom: "Jean",
  age: 42
};
print("modifie l'âge d'une personne");
unePersonne.age = 7;
print("affiche l'âge d'une personne");
show(unePersonne.age);
print("affiche une personne");
show(unePersonne);
print("modifie l'âge d'une personne");
 
print("efface l'âge d'une personne");
delete unePersonne.age;
 
show(unePersonne.age);
show(unePersonne);

exercice

var unePersonne = {
  nom: "Dupont",
  prenom: "Jean",
  age: 42,
  "citation préférée": "honni soit qui mal y pense !"
};
var uneAutrePersonne = {
  nom: "Dupond",
  prenom: "Paul",
  //Dupont Paul est un petit coquin qui ne dit pas son âge !
  "citation préférée": "la purée c'est cool !"
};
 
function salutation(personne) {
  // ...
}
 
print(salutation(unePersonne)); //affiche :
//Bonjour, Jean Dupont. Vous avez 42 ans :
//honni soit qui mal y pense !
print("un indice :");
show("age" in uneAutrePersonne);
print(salutation(uneAutrePersonne)); //affiche :
//Bonjour, Paul Dupond.
//la purée c'est cool !

Tableaux

Idem Objets, sauf que les clefs sont : “0”, “1”, “2”, “3”, …

Ils disposent d'une notation littérale spécifique :

var tableau = ["un", "deux", "trois", "quatre"];
 
//code générique pour parcourir un tableau
for( var i = 0; i < tableau.length; i++) {
  // 'tableau[i]' permet de lire la valeur à l'indice 'i'
  print("A l'indice : "+i+" la valeur est : "+tableau[i]);
}

Exemple

function sommeNombresTableau(tableau) {
  var somme = 0;
  for (var i = 0; i < tableau.length; i++) {
     somme += tableau[i];
  }
  return somme;
}
 
var unTableau = [123, 42, 3, 130, -40, 42];
 
print("La somme de ", unTableau," est : ", sommeNombresTableau(unTableau));

Exercices

  • écrire une fonction qui trouve le plus grand nombre d'un tableau (et la tester).
  • écrire une fonction qui dit combien de fois figure le nombre 42 dans un tableau (et la tester).
cours2012/programmation/td/objets_et_tableaux.txt · Dernière modification: 2013/04/01 18:13 (modification externe)