Równość ścisła a luźna
Część sekcji Podstawy ścieżki JavaScript w Coddy. Lekcja 16 z 77.
W JavaScript istnieją dwa rodzaje operatorów równości: równość luźna (==) i równość ścisła (===).
Porównanie luźne (==) sprawdza, czy dwie wartości są równe po konwersji typów. Oznacza to, że jeśli operandy mają różne typy, JavaScript spróbuje przekonwertować je na wspólny typ przed porównaniem.
Na przykład:
let b = 5 == "5"; // Ma wartość true, ponieważ ciąg znaków "5" jest przed porównaniem konwertowany na liczbę 5let b = 0 == false; // Ma wartość true, ponieważ wartość logiczna false jest przed porównaniem konwertowana na liczbę 0let c = "" == false; // Ma wartość true, ponieważ pusty ciąg znaków jest przed porównaniem konwertowany na liczbę 0Z kolei ścisła równość (===) sprawdza, czy dwie wartości są równe bez dokonywania konwersji typów. Jeśli operandy mają różne typy, są uznawane za nierówne.
Na przykład:
let b = 5 === "5"; // Przechowuje false, ponieważ nie zachodzi konwersja typów, a liczba nie jest równa ciągowi znakówlet b = 0 === false; // Przechowuje false, ponieważ nie jest wykonywana konwersja typów, a liczba 0 nie jest równa wartości logicznej falseOgólnie zaleca się używanie ścisłej równości (===) w większości przypadków, aby uniknąć nieoczekiwanych wyników spowodowanych konwersją typów.
Podobnie istnieją również operatory nierówności luźnej (!=) i nierówności ścisłej (!==), które działają w podobny sposób, ale sprawdzają nierówność zamiast równości.
Nierówność luźna (!=) sprawdza, czy dwie wartości nie są równe po wykonaniu konwersji typów, natomiast nierówność ścisła (!==) sprawdza, czy dwie wartości nie są równe bez konwersji typów.
Wyzwanie
PoczątkującyOtrzymujesz kod z trzema zmiennymi: a, b i c.
Twoim zadaniem jest wykonanie następujących porównań i wyświetlenie wyników:
- Sprawdź, czy
ajest luźno równeb, i zapisz wynik wd. - Sprawdź, czy
ajest ściśle równec, i zapisz wynik we. - Sprawdź, czy
bjest luźno różne odc, i zapisz wynik wf. - Sprawdź, czy
ajest ściśle różne odb, i zapisz wynik wg.
Użyj podanych zmiennych i operatorów porównania, aby wykonać zadanie.
Spróbuj swoich sił
// Podane zmienne
let a = 10
let b = "10"
let c = true
// Wpisz swój kod poniżej
// Nie zmieniaj poniższej linii
console.log(`d = ${d}`)
console.log(`e = ${e}`)
console.log(`f = ${f}`)
console.log(`g = ${g}`)Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka — prosta logikaOperatory logiczne, część 3Konwersja typów7Kalkulator podziału rachunku
Wiadomość powitalnaObliczanie napiwku i sumy10FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz2Zmienne
LiczbyŁańcuch znakówWartość logicznaKonwencje nazewnictwaPuste zmiennePodsumowanie – inicjalizacja zmiennychStałe5Podejmowanie decyzji
Instrukcja ifIf - ElsePowtórka – prosty kalkulatorZagnieżdżone If - ElseInstrukcja switch3Operatory, część 1
Operatory arytmetyczneOperator moduloSkrócone operatory arytmetyczneOperatory porównaniaRówność ścisła a luźnaPowtórka — prosta matematyka6Podstawowe wejście/wyjście
WyjścieWyjście ze zmiennymiKonwersja typów — część 1Konwersja typów — część 2Powtórka — do 120Powtórka — prawda czy fałszPoćwicz samodzielnie: Kompilator JavaScript online