Quel est le résultat des alertes OR ?
importance: 3
Qu’est-ce que le code ci-dessous va sortir ?
alert( alert(1) || 2 || alert(3) );
La réponse : d’abord 1 puis 2.
alert( alert(1) || 2 || alert(3) );
Règle importante à retenir : L’appel de l’alert ne renvoie pas de valeur. Ou, en d’autres termes, il retourne undefined.
- Le premier OR
||évalue son opérande gauchealert(1). Cela affiche le premier message avec1. - L’
alertretourneundefined, donc OR passe au deuxième opérande en recherchant une valeur vraie. - Le deuxième opérande
2est vrai, donc l’exécution est interrompue,2est renvoyé puis affiché par l’alerte externe.
Il n’y aura pas de 3, car l’évaluation n’atteint pas l’alert (3).