JavaScript > JavaScript Fundamentals > Control Structures > if...else statements
if...else if...else Chain
This snippet illustrates the use of if...else if...else
statements to handle multiple conditions and execute different code blocks based on the first condition that evaluates to true
.
Core Concept: Multiple Conditions
The if...else if...else
statement allows you to check multiple conditions in a sequence. Each else if
condition is checked only if the preceding if
or else if
conditions are false. The else
block, if present, executes only if none of the preceding conditions are true.
Code Example
This code determines a letter grade based on a numerical score. It checks the score against a series of thresholds and assigns the corresponding grade accordingly.
let score = 75;
let grade;
if (score >= 90) {
grade = 'A';
} else if (score >= 80) {
grade = 'B';
} else if (score >= 70) {
grade = 'C';
} else if (score >= 60) {
grade = 'D';
} else {
grade = 'F';
}
console.log("Grade: " + grade);
Explanation of the Code
1. We declare a variable named score
and assign it the value 75.
2. We declare a variable named grade
to store the letter grade.
3. The if
statement checks if score >= 90
. This is false, so the next else if
condition is checked.
4. The else if
statement checks if score >= 80
. This is also false, so the next else if
condition is checked.
5. The else if
statement checks if score >= 70
. This is true, so grade
is assigned the value 'C'.
6. Because one condition was true
all following else if
are ignored, including the else
block.
7. Finally, the code prints "Grade: C" to the console.
Real-Life Use Case
if...else if...else
statements are commonly used in menu-driven applications, decision-making processes based on user input, state management in games, and routing requests to different handlers based on URL paths.
Best Practices
if...else if...else
statements are mutually exclusive to avoid unexpected behavior.else
block to handle unexpected or default cases.switch
statement when dealing with multiple conditions based on the same variable.if...else if...else
chains into smaller, more manageable functions or use design patterns like the strategy pattern.
Interview Tip
Be prepared to explain the difference between if...else
and if...else if...else
statements, provide examples of their use, and discuss strategies for writing efficient and maintainable conditional code. Know when a switch
statement might be a better alternative.
When to use them
Use if...else if...else
statements when you need to evaluate multiple conditions in a specific order and execute different code blocks based on the first condition that evaluates to true
. They are useful for handling a series of related choices or options.
Memory footprint
The memory footprint of if...else if...else
statements is minimal, similar to regular if...else
statements. The additional else if
conditions consume a small amount of memory to store the condition and the pointer to the corresponding code block. The impact on overall performance is negligible unless used excessively.
Alternatives
Alternatives to if...else if...else
statements include:
Pros
Cons
else if
conditions.switch
statement instead).
FAQ
-
What happens if multiple conditions in an 'if...else if...else' chain are true?
In anif...else if...else
chain, only the code block associated with the first condition that evaluates totrue
will be executed. The remaining conditions are not checked. -
Is the 'else' block required in an 'if...else if...else' statement?
No, theelse
block is optional. If none of theif
orelse if
conditions are true and there is noelse
block, then no code block within theif...else if...else
statement will be executed.