Conditional Statements and Program Flow

Normally in JavaScript, the program flow is linear: each statement is processed in turn, one right after another. It takes deliberate action to change this. You can put the code in a function that is only called based on some action or event, or you can perform some form of conditional test and run a block of code only if the test evaluates to true.

One of the more common approaches to changing the program flow in JavaScript is through a conditional statement. As seen in the last few sections, the typical conditional statement has the following format:

if (value) {
statements processed

The term conditional comes from the fact that a condition has to be met before the block associated with the statement is processed. The example equates to: if some value (whether a result of an expression, a variable, or or a literal) evaluates to true, then do the following code; otherwise, jump to the end of the block, and continue processing at the very next line.

The use of the if keyword signals the beginning of the conditional test, and the parenthetical expression encapsulates the test. In the following code, the binary flag is tested against two bitmasks to see if either is matched. If so, and only then, the code contained in curly braces following the conditional expression is processed:

if ((fieldsSet & FIELD_A) && (fieldsSet & FIELD_C)) {
   alert("Fields A and C are set");

The use of curly braces isn’t necessary in this example because only one line ...

Get Learning JavaScript now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.