JavaScript : rendre le Web interactif (école d'ingénieur) · Chapitre 7 · Exercice de TD
Compter les balises
Le DOM : lire et modifier la page · niveau 2
Énoncé
Écrire un script qui compte, dans le <body>, combien de fois apparaît chaque nom de balise, et affiche les résultats du plus fréquent au moins fréquent (par ordre alphabétique à égalité), sous la forme a:3 p:2 ....
Corrigé
const compte = new Map();
for (const element of document.body.querySelectorAll("*")) {
const nom = element.tagName.toLowerCase();
compte.set(nom, (compte.get(nom) ?? 0) + 1);
}
const tries = [...compte].toSorted((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]));
console.log(tries.map(([nom, n]) => `${nom}:${n}`).join(" "));
a:3 p:2 em:1 h1:1 header:1 main:1 nav:1
Le sélecteur universel * rend tous les descendants du <body>. tagName est en majuscules pour les éléments HTML, d'où toLowerCase.
100 % gratuit
La suite du chapitre est sur Adloun
- 10 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.