9.7. Terminating a Loop With breakΒΆ

JavaScript, like most programming languages, provides a mechanism for terminating a loop before it would complete otherwise. The break keyword, when used within a loop, will immediately terminate the execution of any loop. Program execution then continues at the next line of code below the loop.

Example

This loop executes 12 times, for values of i from 0 to 11. During the twelfth iteration, i is 11 and the condition i > 10 evaluates to true for the first time and execution reaches the break statement. The loop is immediately terminated at that point.

1for (let i = 0; i < 42; i++) {
2
3   // rest of loop body
4
5   if (i > 10) {
6      break;
7   }
8
9}

The break statement can also be used within a while loop. Consider a situation where we are searching for a particular element in an array. (We have seen that JavaScript has array methods that can carry out array searches, but many programming languages do not.)

We can use a while loop to say, while we have not reached the end of the array, continue iterating. We can then include a break within a conditional check to say, when we have found the element we are searching for, exit the loop.

Example

A while loop can be used with break to search for an element in an array.

 1let numbers = [ /* some numbers */ ];
 2let searchVal = 42;
 3let i = 0;
 4
 5while (i < numbers.length) {
 6   if (numbers[i] === searchVal) {
 7      break;
 8   }
 9   i++;
10}
11
12if (i < numbers.length) {
13   console.log("The value", searchVal, "was located at index", i);
14} else {
15   console.log("The value", searchVal, "is not in the array.");
16}

Notice that we use a while loop in this example, rather than a for loop. This is because our loop variable, i, is used outside the loop. When we use a for loop in the way we have been, the loop variable exists only within the loop.