en.javascript.info/1-js/02-first-steps/11-logical-operators/2-alert-or/solution.md
Daniel Tinsley 81ea42015b
Fix typo
Changed "it's" to "its" since that is the correct spelling of the possessive form of "it."
2020-02-26 17:19:11 -06:00

565 B

The answer: first 1, then 2.

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

The call to alert does not return a value. Or, in other words, it returns undefined.

  1. The first OR || evaluates its left operand alert(1). That shows the first message with 1.
  2. The alert returns undefined, so OR goes on to the second operand searching for a truthy value.
  3. The second operand 2 is truthy, so the execution is halted, 2 is returned and then shown by the outer alert.

There will be no 3, because the evaluation does not reach alert(3).