10 questions. Une seule bonne réponse par question, et
l'explication s'affiche dès que vous avez répondu.
Le cours · La fiche
0 / 10
1Pourquoi charger son script avec defer, ou juste avant </body> ?
Un script lu dans le <head> s'exécute avant que le HTML soit construit : tous vos getElementById renvoient null. defer dit au navigateur d'attendre la fin du document. C'est la cause numéro un du fameux « Cannot read properties of null ».
2Que vaut 5 === "5" ?
=== compare la valeur ET le type : un nombre n'est pas une chaîne. ==, lui, convertit d'abord — d'où 5 == "5" vrai, et 0 == "" vrai aussi. On écrit donc toujours ===, sauf raison explicite.
3Que vaut "2" + 3 ?
Avec une chaîne d'un côté, + n'additionne plus : il concatène. Or .value d'un champ et prompt() rendent toujours du texte, même quand l'utilisateur tape un nombre. D'où Number(x) + 3 avant tout calcul.
4Comment brancher une fonction sur un clic ?
Sans parenthèses.fn passe la fonction elle-même ; fn() l'appelle tout de suite et transmet son résultat — souvent undefined. Résultat : un effet au chargement de la page, et plus rien au clic.
5Un formulaire validé en JS recharge la page malgré tout. Qu'a-t-on oublié ?
L'événement submit a un comportement par défaut : envoyer le formulaire et recharger. e.preventDefault() l'annule, le temps de vérifier les champs. Sans lui, la page part avant que le message d'erreur s'affiche.
6Pour insérer le pseudo saisi par un visiteur dans la page, on utilise :
.innerHTMLinterprète ce qu'on lui donne : une saisie contenant une balise devient du vrai HTML dans votre page — c'est la faille XSS. .textContent écrit du texte, point. On ne réserve innerHTML qu'à du balisage qu'on a écrit soi-même.
7Quelle boucle s'exécute au moins une fois, même si la condition est fausse ?
do…while teste la condition à la fin du tour : le corps est donc exécuté avant qu'on se demande s'il faut continuer. C'est la boucle du menu qu'on affiche au moins une fois avant de demander un choix.
8Un switch sans break dans un case fait quoi ?
C'est la chute (fall-through) : sans break, l'exécution poursuit dans le case d'après, condition ou pas. Utile quand plusieurs valeurs partagent un traitement, redoutable quand on l'a simplement oublié.
9Comment changer la couleur de fond depuis JavaScript ?
En JavaScript, un tiret serait lu comme une soustraction : les propriétés CSS passent donc en camelCase — backgroundColor, fontSize, marginTop. Et pour plus d'un réglage, on préfère classList.add(), qui laisse le style dans la feuille CSS.
10À quoi sert la validation en JavaScript ?
Tout ce qui tourne dans le navigateur est sous le contrôle du visiteur : il peut désactiver JavaScript, modifier la page, ou envoyer la requête à la main. La validation côté client fait gagner un aller-retour ; seul le serveur décide.