Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Operator ścisłej równości === w JavaScript

Operator ścisłej równości === w JavaScript

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Operator ścisłej równości === w JavaScript

Operator === służy w JavaScript do ścisłego porównywania wartości. Sprawdza jednocześnie dwie rzeczy:

  • czy porównywane wartości są równe,
  • czy mają ten sam typ danych.

Dlatego wyrażenie:

5 === '5'

zwraca:

false

Liczba 5 ma typ number, natomiast '5' zapisane w apostrofach jest tekstem, czyli typem string. Mimo że wizualnie wyglądają podobnie, dla operatora === nie są tym samym.

Różnica między == a ===

W JavaScript istnieją dwa podobne operatory porównania:

5 == '5'   // true
5 === '5'  // false

Operator == wykonuje porównanie luźne. JavaScript może wtedy automatycznie przekonwertować typy, np. tekst '5' na liczbę 5.

Operator === nie wykonuje takiej konwersji. Typy muszą być identyczne.

Dlaczego warto używać ===?

W praktyce programistycznej zaleca się używanie ===, ponieważ:

  • daje bardziej przewidywalne wyniki,
  • nie wykonuje ukrytej konwersji typów,
  • zmniejsza ryzyko błędów logicznych.

Przykłady

10 === 10      // true
10 === '10'    // false
true === 1     // false
false === 0    // false
'abc' === 'abc' // true

W pytaniach egzaminacyjnych należy zwracać uwagę nie tylko na wartość, ale także na typ danych. Apostrofy lub cudzysłowy oznaczają w JavaScript tekst, a nie liczbę.