Jaký je rozdíl mezi Null a Undefined v JavaScriptu?

Jaký je rozdíl mezi Null a Undefined v JavaScriptu?

Tato příručka se podívá na rozdíl mezi nula a nedefinováno hodnoty v JavaScriptu. Znalost rozdílu mezi těmito dvěma hodnotami je důležitá pro ladění a vytváření kódu bez chyb.





přepínač nintendo se nemůže připojit k síťovému zařízení

Pomocí konzoly prohlížeče postupujte nebo vyzkoušejte ukázky kódu popsané v této příručce.





Porovnání rovnosti nulových a nedefinovaných hodnot

V JavaScriptu, nula je primitivní hodnota, která se používá k označení záměrné absence hodnoty objektu, zatímco nedefinováno je primitivní hodnota, která funguje jako zástupný symbol pro proměnnou, které nebyla přiřazena žádná hodnota.





Nula a nedefinováno hodnoty jsou při porovnání pomocí operátoru rovnosti JavaScriptu stejné.

Použijte operátor rovnosti ( == ) pro srovnání, pokud nula a nedefinováno hodnoty jsou v JavaScriptu stejné.



Otevřete konzolu prohlížeče a zadejte následující kód, poté stiskněte Vstupte.

null == undefined

Výstup by vám měl poskytnout něco, co vypadá takto, vrácená booleovská hodnota skutečný jednoduše to znamená, že obě hodnoty jsou stejné.





Další informace: Jak deklarovat proměnné v JavaScriptu

Přísné srovnání rovnosti

JavaScript má také provozovatele identity ( === ), také známý jako přísný operátor rovnosti kromě operátoru rovnosti ( == )





Operátor identity pokračuje tím, že zkontroluje, zda je základní typ porovnávaných hodnot stejný. To v podstatě znamená, že i když jsou dvě hodnoty stejné, nemusí být stejné nebo přísně stejné, pokud se jejich základní typy liší.

Chcete -li otestovat přísnou rovnost, použijte trojité znaménko rovnosti, jak je uvedeno níže.

null === undefined

Výsledek výše uvedeného příkazu vám poskytne booleovskou hodnotu Nepravdivé „Jinými slovy, tyto dvě hodnoty nejsou totožné, i když jsou si rovny.

Zjištění typu Null a Undefined

Použijte vestavěnou funkci JavaScript Typ() zjistit základní typ hodnoty. Funkce přebírá jeden parametr hodnoty, jejíž typ chcete najít.

Příbuzný: The Ultimate JavaScript Cheat Sheet

typeof(null)

Hodnota null je typu objekt jak můžete vidět z výstupu níže.

Spuštění podobného testu na nedefinováno hodnota vám poskytne výsledek nedefinováno .

typeof(undefined)

Práce s čísly

Chcete -li zjistit další rozdíly, proveďte test čísel na nula a nedefinováno hodnoty. Pokud je hodnotou číslo, znamená to, že s ní můžeme provádět numerické operace.

Existují dva hlavní způsoby, jak otestovat, zda je hodnota v JavaScriptu.

1. Pomocí isFinite () funkce - pokud je testovanou hodnotou číslo, funkce se vrátí skutečný ; jinak se vrátí Nepravdivé .

2. Pomocí isNaN () funkce - pokud je testovanou hodnotou číslo, pak se vrátí Nepravdivé ; jinak se vrátí skutečný .

Poznámka : jeNaN je zkratka pro „není číslo“.

Aby to bylo jednoduché, tato příručka bude používat pouze isFinite () funkci k otestování, zda je hodnota číslem, ale klidně také zkuste isNaN () funkce. Obě tyto funkce berou jako parametr hodnotu, na které chcete spustit test čísel.

isFinite(null)

Výsledek je skutečný , význam nula je hodnota typu číslo v JavaScriptu. Provedení stejného testu dne nedefinováno vrací Nepravdivé .

isFinite(undefined)

Zadejte nátlak

JavaScript je volně zadávaný jazyk, a proto při provádění matematických operací JavaScript automaticky převede výsledek na požadovaný typ.

Tato automatická konverze, která se běžně označuje jako nátlakový typ, může bohužel přinést spoustu překvapení.

Spusťte následující numerickou operaci nula a nedefinováno v konzole vašeho prohlížeče.

1 + null 3 * null 1 + undefined 3 * undefined;

Jak vidíte, na zařízení můžete provádět některé numerické operace nula hodnotu, protože je to číslo, které nemá žádnou hodnotu. Proto se s ním zachází jako s nulou. Ber to na vědomí nula není rovno nula v JavaScriptu, ale v tomto případě se s tím tak nějak zachází.

Numerické operace na nedefinováno výsledkem je vrácení NaN Hodnota (není číslo). Pokud s nimi nebudete zacházet opatrně, můžete to zažít během běhu.

Vyhýbání se chybám za běhu

Dobré porozumění nula a nedefinováno hodnoty jsou životně důležité, abyste se vyhnuli chybám za běhu ve vašem produkčním kódu. Chyby související s nedefinováno hodnoty lze obtížně ladit a je lepší se jim vyhnout.

Zvažte použití TypeScriptu pro silně typovaný kód, který se kompiluje do JavaScriptu. V jazyce TypeScript je váš kód zkontrolován při kompilaci, aby se minimalizovaly chyby za běhu v produkčním kódu.

Podíl Podíl tweet E-mailem Související témata
  • Programování
  • JavaScript
  • Tipy pro kódování
O autorovi Dobré jít(36 článků zveřejněno)

Mwiza vyvíjí software z povolání a rozsáhle píše o Linuxu a front-end programování. Mezi jeho zájmy patří historie, ekonomie, politika a podniková architektura.

Více od Mwizy Kumwendy

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné elektronické knihy a exkluzivní nabídky!

Kliknutím sem se přihlásíte k odběru