JavaScript Fundamentals · Conditions · Lesson 7 of 48
Comparison and Logical Operators
Concept
Comparison and Logical Operators
===, !==, <, and > compare values. && (and), || (or), and ! (not) combine multiple conditions together.
Always prefer === and !== over == and != — the triple-equals versions compare both value and type, avoiding surprising automatic type coercion.
- Explain the core idea behind Comparison and Logical Operators.
- Predict output before running a change.
- Test one realistic and one unusual input.
- Use the result to make the next decision.
- 1. Read one concept.
- 2. Change the example.
- 3. Run, compare, and explain.
- 4. Complete the challenge below.
a === b // strict equality
a && b // both must be true
a || b // at least one must be truelet age = 19;
let hasId = true;
if (age >= 18 && hasId) {
console.log("Entry allowed");
}Try it Yourself »console.log(0 == "0"); // true (coerces types)
console.log(0 === "0"); // false (no coercion)Good to know
|| is also commonly used for a fallback value, like let name = input || "Guest";, though ?? is safer when 0 or an empty string are valid values.
Self-check before continuing
Without looking at the example, describe what changes when you modify one input in Comparison and Logical Operators. Then reopen the editor and prove your explanation with a small test.
You are ready to continue when you can predict, test, and explain the result.
Your turn
Write a condition that checks if a number is between 1 and 100 using &&.
Console