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...elsechain, only the code block associated with the first condition that evaluates totruewill be executed. The remaining conditions are not checked. -
Is the 'else' block required in an 'if...else if...else' statement?
No, theelseblock is optional. If none of theiforelse ifconditions are true and there is noelseblock, then no code block within theif...else if...elsestatement will be executed.