-
Quel est l'équivalent de
pouet.coin
?- pouet[coin]
- pouet["coin"]
- pouet.getCoin()
- Aucune des solutions précédentes.
Les membres d'un objet sont définis en associant des labels et des valeurs. On accède aux valeurs à l'aide de deux syntaxes :
pouet.coin
etpouet["coin"]
.
coin est une propriété de l'objet pouet mais la seconde syntaxe permet d'utiliser un label "dynamique" sous forme d'un passage de valeur (pouet.for
est invalide,pouet["for"]
ne l'est pas).
La méconnaissance de cette syntaxe est souvent la source d'une utilisation inutile d'eval
..
Pour en savoir plus : " Les objets ". -
Laquelle de ces expressions est évaluée à
false
?- "Infinity" == Infinity
- NaN == NaN
- "0xa" == 10
- {"valueOf": function() {return 2;}} == 2
Aussi surprenant que cela puisse paraître,
NaN
n'est égal à rien en JavaScript, pas même à lui-même. Il faut utiliser la fonctionisNaN
pour éviter ce problème.
Pour en savoir plus : "NaN". -
Quelle est la méthode spécifiée dans le DOM-2 pour l'ajout des gestionnaires d'événements ?
- addEventListener
- attachEvent
- attachEventListener
- listen
attachEvent
est l'équivalent propriétaire de cette méthode pour IE. -
Quel est le résultat de
parseInt("010",8)
?- 1
- 2
- 8
- 10
"010"
est considéré avec JavaScript version ES3 comme étant écrit en base 8 car commençant par un " 0 ". Ce n'est plus vrai automatiquement avec ES5 c'est pourquoi on force l'utilisation de la base 10 avec le 2e paramètre. -
window.i = 0; var i = 2; alert(window.i);
: que va afficher ce code ?- 0
- 2
- Game over
- undefined
Les variables globales sont en fait des propriétés de l'objet global (
window
).
Pour en savoir plus : " Variables globales ". -
Lequel de ces types d’événements "bouillonne" (se propage) ?
- blur
- focus
- load
- select
Ces quatre types d’événements font partie de ceux hérités du DOM-0. Il est à noter que, bien que
blur
etfocus
ne " bouillonnent " pas, DOM-2 a introduit leurs équivalents respectifsDOMFocusOut
etDOMFocusIn
qui le font mais qui ne sont pour l’instant pas implémentés par tous les navigateurs. -
Quelle chaîne de caractères ne correspond pas à l'expression régulière
/\ba/
?- "abcd"
- "_a"
- "-a"
- "d c b a"
\b
correspond à une extrémité de mot, c'est-à-dire une extrémité de la chaîne de caractères, ou tout caractère n'appartenant pas à l'ensemble[a-zA-Z0-9_]
. -
Lorsqu'on presse brièvement un caractère du clavier, quelle séquence d'événements est générée ?
- keypress / keydown / keyup
- keyup / keydown / keypress
- keydown / keypress / keyup
- keydown / keyup / keypress
La réponse est : keydown / keypress / keyup. Si on maintient la touche, keydown et keypress se répètent jusqu'au relâchement de la touche.
-
Si on presse brièvement une touche autre qu'un caractère, est-ce la même séquence d'événements ?
- non, la séquence est alors keydown / keyup
- oui, c'est identique
- non, la séquence est alors keypress / keydown / keyup
- non, seul l'événement keypress est généré
La réponse est : non, la séquence est alors keydown / keyup. Si on maintient la touche, keydown se répète jusqu'au relâchement de la touche.
-
Depuis quand sont disponibles les arrow functions ?
- JavaScript 1.7
- ECMAScript 6
- ECMAScript 7
- ECMAScript 2018
Résultats du Quiz JavaScript / DOM difficile
Score 0/10
Le verdict de Bernard Minet

As-tu bien compris le principe de cocher les cases ?