3. Operatory matematyczne, logiczne i porównania
~25 min
podstawowy
Operatory pozwalają manipulować danymi: dodawać, porównywać, łączyć warunki.
Operatory matematyczne
let a = 10;
let b = 3;
console.log(a + b); // 13 (dodawanie)
console.log(a - b); // 7 (odejmowanie)
console.log(a * b); // 30 (mnożenie)
console.log(a / b); // 3.333... (dzielenie)
console.log(a % b); // 1 (reszta z dzielenia)
console.log(a ** b); // 1000 (potęgowanie, ES6+)
Ciekawostka: + działa też na stringach: "A" + "B" = "AB" (konkatenacja).
Operatory porównania
console.log(5 > 3); // true (większe)
console.log(5 >= 5); // true (większe lub równe)
console.log(5 < 3); // false (mniejsze)
console.log(5 <= 3); // false (mniejsze lub równe)
console.log(10 === 10); // true (równe z typem)
console.log(10 !== "10"); // true (nierówne z typem)
console.log(10 == "10"); // true (równe bez typu – unikaj!)
Zawsze używaj: === i !==, bo == konwertuje typy (np. 0 == false = true).
Operatory logiczne
let x = true;
let y = false;
console.log(x && y); // false (AND – oba true)
console.log(x || y); // true (OR – co najmniej jedno true)
console.log(!x); // false (NOT – negacja)
Ciekawostka: Short-circuit: x && funkcja() – funkcja wykona się tylko jeśli x true.
Ostrzeżenie: Falsy wartości: false, 0, "", null, undefined, NaN – traktowane jak false w warunkach.
Ćwiczenie
- Oblicz (5 + 3) * 2 % 7 i wyświetl.
- Sprawdź czy 10 === "10" i dlaczego nie.
- let pada = true; let slonce = false; console.log(pada || slonce);
Poprawka do oryginału: Dodano logiczne operatory, więcej porównań, potęgowanie; rozszerzono przykłady.