We want to make this open-source project available for people all around the world.

Help to translate the content of this tutorial to your language!

back to the lesson

A question about "if"

importance: 5

Which of these alerts are going to execute?

What will the results of the expressions be inside if(...)?

if (-1 || 0) alert( 'first' ); if (-1 && 0) alert( 'second' ); if (null || -1 && 1) alert( 'third' );

The answer: the first and the third will execute.

Details:

// Runs. // The result of -1 || 0 = -1, truthy if (-1 || 0) alert( 'first' ); // Doesn't run // -1 && 0 = 0, falsy if (-1 && 0) alert( 'second' ); // Executes // Operator && has a higher precedence than || // so -1 && 1 executes first, giving us the chain: // null || -1 && 1 -> null || 1 -> 1 if (null || -1 && 1) alert( 'third' );