Menu
Coddy logo textTech

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ę 5
let b = 0 == false; // Ma wartość true, ponieważ wartość logiczna false jest przed porównaniem konwertowana na liczbę 0
let c = "" == false; // Ma wartość true, ponieważ pusty ciąg znaków jest przed porównaniem konwertowany na liczbę 0

Z 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ów
let b = 0 === false; // Przechowuje false, ponieważ nie jest wykonywana konwersja typów, a liczba 0 nie jest równa wartości logicznej false

Ogó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.

challenge icon

Wyzwanie

Początkujący

Otrzymujesz kod z trzema zmiennymi: a, b i c.

Twoim zadaniem jest wykonanie następujących porównań i wyświetlenie wyników:

  1. Sprawdź, czy a jest luźno równe b, i zapisz wynik w d.
  2. Sprawdź, czy a jest ściśle równe c, i zapisz wynik w e.
  3. Sprawdź, czy b jest luźno różne od c, i zapisz wynik w f.
  4. Sprawdź, czy a jest ściśle różne od b, i zapisz wynik w g.

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}`)
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator JavaScript online