назад до уроку

Який результат alerts, об'єднаних АБО?

важливість: 3

Що виведе код нижче?

alert( alert(1) || 2 || alert(3) );

Відповідь: спочатку 1, потім 2.

alert( alert(1) || 2 || alert(3) );

Виклик alert не повертає значення. Або, іншими словами, повертає undefined.

  1. Перший АБО || обчислює свій лівий операнд alert(1). Це показує перше повідомлення з 1.
  2. alert повертає undefined, тому АБО переходить до другого операнда, шукаючи правдиве значення.
  3. Другий операнд 2 є правдивим, тому виконання зупинено, повернуто 2 і потім показано зовнішнім alert.

3 не буде виведене, тому що обчислення не досягає alert(3).