W tym przewodniku przyjrzymy się różnicy między zero i nieokreślony wartości w JavaScript. Znajomość różnicy między tymi dwiema wartościami jest ważna dla debugowania i tworzenia kodu wolnego od błędów.
Użyj konsoli przeglądarki, aby śledzić lub wypróbować przykłady kodu omówione w tym przewodniku.
Porównanie równości wartości zerowych i niezdefiniowanych
W JavaScript, zero jest wartością pierwotną, która jest używana do oznaczenia celowego braku wartości obiektu, podczas gdy nieokreślony jest wartością pierwotną, która działa jako symbol zastępczy dla zmiennej, do której nie przypisano wartości.
Zero i nieokreślony wartości są równe w porównaniu z operatorem równości JavaScript.
Użyj operatora równości (==) do porównania, jeśli zero i nieokreślony wartości są równe w JavaScript.
Otwórz konsolę przeglądarki i wprowadź następujący kod, a następnie naciśnij Wchodzić.
null == niezdefiniowany
Wynik powinien dać coś, co wygląda tak, zwrócona wartość logiczna prawdziwe oznacza po prostu, że te dwie wartości są równe.
Ucz się więcej: Jak zadeklarować zmienne w JavaScript
Ścisłe porównanie równości
JavaScript posiada również operator tożsamości (), znany również jako operator ścisłej równości oprócz operatora równości (==)
Operator tożsamości idzie o krok dalej, sprawdzając, czy podstawowy typ porównywanych wartości jest taki sam. Zasadniczo oznacza to, że nawet jeśli dwie wartości są równe, mogą nie być identyczne lub ściśle równe, jeśli ich typy bazowe są różne.
Aby przetestować ścisłą równość, użyj potrójnego znaku równości, jak poniżej.
null undefined
Wynik powyższego polecenia da ci wartość logiczną fałszywe, Innymi słowy, te dwie wartości nie są identyczne, mimo że są równe.
Ustalanie rodzaju wartości Null i Undefined
Użyj wbudowanej funkcji JavaScript typ() aby znaleźć podstawowy typ wartości. Funkcja pobiera pojedynczy parametr wartości, której typ chcesz znaleźć.
Związane z: Najlepsza ściągawka JavaScript
typ(null)
Wartość null jest typu of obiekt jak widać z poniższych danych wyjściowych.
Przeprowadzenie podobnego testu na nieokreślony wartość da ci wynik nieokreślony.
rodzaj (nieokreślony)
Praca z liczbami
Aby zbadać więcej różnic, przeprowadź test liczbowy na zero i nieokreślony wartości. Jeśli wartość jest liczbą, oznacza to, że możemy na niej wykonywać operacje numeryczne.
Istnieją dwa główne sposoby sprawdzenia, czy wartość jest liczbą w JavaScript.
1. Używając jest skończona() function—jeśli testowana wartość jest liczbą, funkcja zwraca prawdziwe; w przeciwnym razie wróci fałszywe.
2. Używając isNaN() function—jeżeli testowana wartość jest liczbą, to zwraca się fałszywe;w przeciwnym razie wróci prawdziwe.
Uwaga: isNaN jest skrótem od „to nie jest liczba”.
Aby uprościć sprawę, w tym przewodniku wykorzystamy tylko jest skończona() funkcja do sprawdzenia, czy wartość jest liczbą, ale możesz również wypróbować isNaN() funkcjonować. Obie te funkcje przyjmują jako parametr wartość, na której chcesz uruchomić test liczb.
isFinite (null)
Wynik to prawdziwe, znaczenie zero jest wartością typu numer w JavaScript. Natomiast przeprowadzając ten sam test na nieokreślony zwroty fałszywe.
isFinite (nieokreślone)
Wpisz przymus
JavaScript jest językiem o luźnym typowaniu iz tego powodu podczas wykonywania operacji matematycznych JavaScript automatycznie konwertuje wynik na żądany typ.
Niestety ta automatyczna konwersja, potocznie nazywana przymusem typu, może nieść ze sobą wiele niespodzianek.
Uruchom następującą operację numeryczną na zero i nieokreślony w konsoli przeglądarki.
1 + zero
3 * brak
1 + nieokreślony
3 * nieokreślone;
Jak widać, możesz wykonać kilka operacji numerycznych na zero wartość, ponieważ jest to liczba, która nie ma żadnej wartości. Dlatego jest traktowane jak zero. Zwróć uwagę, że zero nie jest równy zero w JavaScript, ale w tym przypadku jest to jakoś traktowane.
Operacje numeryczne na nieokreślony wartość powoduje zwrócenie NaN (Nie liczba) wartość. Jeśli nie będziesz traktowany ostrożnie, możesz doświadczyć tego podczas pracy.
Unikanie błędów w czasie wykonywania
Dobre zrozumienie zero i nieokreślony wartości ma kluczowe znaczenie dla uniknięcia błędów w czasie wykonywania w kodzie produkcyjnym. Błędy związane z nieokreślony wartości mogą być trudne do debugowania i najlepiej ich unikać.
Rozważ użycie języka TypeScript w przypadku kodu o jednoznacznie określonym typie, który kompiluje się do JavaScript. W TypeScript twój kod jest sprawdzany w czasie kompilacji, aby zminimalizować błędy w czasie wykonywania w kodzie produkcyjnym.
- Programowanie
- JavaScript
- Wskazówki dotyczące kodowania
Mwiza z zawodu zajmuje się tworzeniem oprogramowania i pisze obszernie na Linuksie i programowaniu front-end. Niektóre z jego zainteresowań obejmują historię, ekonomię, politykę i architekturę przedsiębiorstwa.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.