Conditionals and Logic
Chained Conditions
Check several conditions in order.
chained-conditions
An `else if` chain tests conditions from top to bottom and stops at the first matching branch.
Chained Conditions
chained_conditions.js
Replay: real traced execution (multi-file project)
const points = 85;
let grade = "";
if (points >= 90) {
grade = "A";
} else if (points >= 70) {
grade = "B";
} else {
grade = "C";
}
console.log("points=" + points);
console.log("grade=" + grade);
const points = 45;
let grade = "";
if (points >= 90) {
grade = "A";
} else if (points >= 70) {
grade = "B";
} else {
grade = "C";
}
console.log("points=" + points);
console.log("grade=" + grade);
const points = 98;
let grade = "";
if (points >= 90) {
grade = "A";
} else if (points >= 70) {
grade = "B";
} else {
grade = "C";
}
console.log("points=" + points);
console.log("grade=" + grade);
points ← 85, grade ← (empty)
1const points→ 85 = 85; //@points=45, 982let grade→ (empty) = "";3if (points >= 90) {if (points >= 70)
4 grade = "A";5} else if (points85 >= 70) {6 grade = "B";7} else {console.log("points=" + points);
8 grade = "C";9}1011console.log("points=" + points85);12console.log("grade=" + gradeB);outputpoints=85 grade=B
points ← 45, grade ← (empty)
1const points→ 45 = 45;2let grade→ (empty) = "";3if (points >= 90) {console.log("points=" + points);
8 grade = "C";9}1011console.log("points=" + points45);12console.log("grade=" + gradeC);outputpoints=45 grade=C
points ← 98, grade ← (empty)
1const points→ 98 = 98;2let grade→ (empty) = "";3if (points >= 90) {if (points >= 90)
1const points = 98;2let grade = "";3if (points98 >= 90) {4 grade = "A";5} else if (points >= 70) {console.log("points=" + points);
8 grade = "C";9}1011console.log("points=" + points98);12console.log("grade=" + gradeA);outputpoints=98 grade=A