Control Flow is the order in which statements are executed in a program.
By default, JavaScript runs code from top to bottom and left to right.
Control flow statements let you change that order , based on conditions, loops or keywords.
Default Flow
Default flow executes code sequentially (from top to bottom / from left to right).
Example
let x = 5;
let y = 6;
let z = x + y;Conditional Control Flow
Conditions let you make decisions using
- if
- if...else
- switch
- ternary (? :)
Example
let text = "Unknown";
if (age >= 18) {
text = "Adult";
} else {
text = "Minor";
}Loops (Repetition Control Flow)
- for
- while
- do...while
Example
for (let i = 0; i < 5; i++) {
text += "The number is " + i + "<br>";
}Jump Statements
Jump statements let you change the flow abruptly using:
- break - exits a loop or switch
- continue - skips the current loop iteration
- return - exits from a function
- throw - jumps to error handling
Example
for (let i = 0; i < 10; i++) {
if (i === 3) { break; }
text += "The number is " + i + "<br>";
}Function Flow
Functions are callable and reusable code blocks
Functions will run when they are called.
Example
function myFunction(p1, p2) {
return p1 * p2;
}JavaScript Is Single-Threaded
JavaScript runs on a single thread .
It can only do one thing at a time .
Every task has to wait for the previous one to finish.
This can freeze an application during slow operations (like file requests).
JavaScript can also run code asynchronously.
Asynchronous programming is covered in the JS Advanced section:
JavaScript Asynchronous Programming .