Conditionals and Logic
Comparisons
Turn numeric comparisons into boolean values.
comparisons
Comparison operators such as `>=`, `<`, and `===` produce booleans. Later conditional code uses those booleans to choose a path.
Comparisons
comparisons.js
Replay: real traced execution (multi-file project)
const score = 75;
const passing = score >= 70;
const perfect = score === 100;
const message = "passing=" + passing + ",perfect=" + perfect;
console.log("score=" + score);
console.log(message);
const score = 50;
const passing = score >= 70;
const perfect = score === 100;
const message = "passing=" + passing + ",perfect=" + perfect;
console.log("score=" + score);
console.log(message);
const score = 90;
const passing = score >= 70;
const perfect = score === 100;
const message = "passing=" + passing + ",perfect=" + perfect;
console.log("score=" + score);
console.log(message);
score ← 75, passing ← true, perfect ← false, message ← passing=true,perfect=false
1const score→ 75 = 75; //@score=50, 902const passing→ true = score→ 75 >= 70;3const perfect→ false = score→ 75 === 100;4const message→ passing=true,perfect=false = "passing=" + passing→ true + ",perfect=" + perfectfalse;56console.log("score=" + score75);7console.log(messagepassing=true,perfect=false);outputscore=75 passing=true,perfect=false
score ← 50, passing ← false, perfect ← false, message ← passing=false,perfect=false
1const score→ 50 = 50;2const passing→ false = score→ 50 >= 70;3const perfect→ false = score→ 50 === 100;4const message→ passing=false,perfect=false = "passing=" + passing→ false + ",perfect=" + perfectfalse;56console.log("score=" + score50);7console.log(messagepassing=false,perfect=false);outputscore=50 passing=false,perfect=false
score ← 90, passing ← true, perfect ← false, message ← passing=true,perfect=false
1const score→ 90 = 90;2const passing→ true = score→ 90 >= 70;3const perfect→ false = score→ 90 === 100;4const message→ passing=true,perfect=false = "passing=" + passing→ true + ",perfect=" + perfectfalse;56console.log("score=" + score90);7console.log(messagepassing=true,perfect=false);outputscore=90 passing=true,perfect=false