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ę.