Adloun

JavaScript : rendre le Web interactif (école d'ingénieur) · Chapitre 5 · Exercice de TD

Inverser un index

Tableaux et objets · niveau 3 (difficile)

Énoncé

Un objet associe à chaque rayon la liste de ses titres :


const parRayon = {
  Informatique: ["Programmation Java", "Introduction à l’algorithmique"],
  Littérature: ["Le Petit Prince"],
};

Construire, en une expression et sans boucle écrite à la main, l'objet inverse qui associe à chaque titre son rayon. On pourra utiliser Object.entries, flatMap (un map dont les résultats, des tableaux, sont mis bout à bout) et Object.fromEntries (l'inverse d'Object.entries).

Corrigé


const parRayon = {
  Informatique: ["Programmation Java", "Introduction à l’algorithmique"],
  Littérature: ["Le Petit Prince"],
};

const rayonDe = Object.fromEntries(
  Object.entries(parRayon).flatMap(([rayon, titres]) => titres.map((titre) => [titre, rayon])),
);
console.log(rayonDe);
console.log(rayonDe["Le Petit Prince"]);

{
  'Programmation Java': 'Informatique',
  'Introduction à l’algorithmique': 'Informatique',
  'Le Petit Prince': 'Littérature'
}
Littérature

Object.entries donne les paires [rayon, titres] ; pour chacune, titres.map(...) fabrique les paires [titre, rayon], et flatMap met ces petits tableaux bout à bout ; Object.fromEntries transforme la liste de paires en objet.

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →