Táto príručka sa zameria na rozdiely medzi nulový a nedefinované hodnoty v JavaScripte. Poznanie rozdielu medzi týmito dvoma hodnotami je dôležité pre ladenie a vytváranie bezchybného kódu.
Postupujte podľa pokynov v konzole prehliadača alebo vyskúšajte ukážky kódu popísané v tejto príručke.
Porovnanie rovnosti nulových a nedefinovaných hodnôt
V JavaScripte, nulový je primitívna hodnota, ktorá sa používa na označenie úmyselnej absencie hodnoty objektu, zatiaľ čo nedefinované je primitívna hodnota, ktorá slúži ako zástupný symbol pre premennú, ktorej nebola priradená hodnota.
Nulový a nedefinované hodnoty sú rovnaké pri porovnaní pomocou operátora rovnosti JavaScriptu.
Použite operátor rovnosti (==) na porovnanie ak nulový a nedefinované hodnoty sú v JavaScripte rovnaké.
Otvorte konzolu prehliadača, zadajte nasledujúci kód a stlačte Zadajte.
null == nedefinované
Výstup by vám mal dať niečo, čo vyzerá takto, vrátená boolovská hodnota pravda jednoducho znamená, že obe hodnoty sú rovnaké.
Uč sa viac: Ako deklarovať premenné v JavaScripte
Prísne porovnanie rovnosti
JavaScript má tiež operátora identity (), ktorý je okrem operátora rovnosti známy aj ako operátor prísnej rovnosti (==)
Operátor identity ide o kilometer navyše kontrolou, či je základný typ porovnávaných hodnôt rovnaký. To v podstate znamená, že aj keď sú dve hodnoty rovnaké, nemusia byť totožné alebo úplne rovnaké, ak sú ich základné typy odlišné.
Ak chcete otestovať úplnú rovnosť, použite trojité znamienko rovnosti, ako je uvedené nižšie.
null nedefinované
Výsledok vyššie uvedeného príkazu vám dá boolovskú hodnotu nepravdivé, Inými slovami, dve hodnoty nie sú totožné, aj keď sú rovnaké.
Zistenie typu nulového a nedefinovaného
Použite zabudovanú funkciu JavaScript Typ() na zistenie podkladového typu hodnoty. Funkcia má jediný parameter hodnoty, ktorej typ chcete nájsť.
Súvisiace: Špičkový JavaScriptový podvodník
typeof (null)
Nulová hodnota je typu objekt ako vidíte z výstupu nižšie.
Prebieha podobný test na serveri nedefinované hodnota vám dá výsledok nedefinované.
typ (nedefinované)
Práca s číslami
Ak chcete zistiť ďalšie rozdiely, vykonajte test počtu nulový a nedefinované hodnoty. Ak je hodnotou číslo, znamená to, že s ním môžeme vykonávať numerické operácie.
Existujú dva hlavné spôsoby, ako otestovať, či je hodnotou v JavaScripte číslo.
1. Pomocou isFinite () funkcia - ak je testovanou hodnotou číslo, funkcia sa vráti pravda; inak sa vracia nepravdivé.
2. Pomocou isNaN () funkcia - ak je testovanou hodnotou číslo, vráti sa nepravdivé; inak sa vráti pravda.
Poznámka: isNaN je skratka pre „nie je číslo“.
Táto príručka bude v záujme zjednodušenia používať iba server isFinite () Funkcia otestuje, či je hodnota číslo, ale môžete tiež vyskúšať isNaN () funkcie. Obe tieto funkcie berú ako parameter hodnotu, na ktorej chcete spustiť číselný test.
isFinite (null)
Výsledok je pravda, čo znamená nulový je hodnota typu číslo v JavaScripte. Keďže rovnaká skúška sa vykonáva dňa nedefinované vracia nepravdivé.
isFinite (undefined)
Nútenie typu
JavaScript je voľne písaný jazyk, a preto pri vykonávaní matematických operácií JavaScript automaticky prevedie výsledok na požadovaný typ.
Táto automatická konverzia, ktorá sa bežne označuje ako nátlak typu, bohužiaľ môže so sebou priniesť veľa prekvapení.
Spustite nasledujúcu numerickú operáciu nulový a nedefinované v konzole prehliadača.
1 + null
3 * nulové
1 + nedefinované
3 * nedefinované;
Ako vidíte, môžete vykonávať niektoré číselné operácie na serveri nulový hodnota, pretože je to číslo, ktoré nemá žiadnu hodnotu. Preto sa s ňou zaobchádza ako s nulou. Ber to na vedomie nulový sa nerovná nula v JavaScripte, ale takto sa s tým nejako zaobchádza.
Číselné operácie na nedefinované hodnota má za následok vrátenie NaN Hodnota (nie číslo). Ak nebudete zaobchádzať opatrne, môžete to zažiť počas behu programu.
Vyhýbanie sa behovým chybám
Dobré pochopenie nulový a nedefinované hodnoty sú životne dôležité, aby sa zabránilo chybám vo vašom produkčnom kóde. Chyby súvisiace s nedefinované hodnoty je ťažké odladiť a najlepšie sa im vyhnúť.
Zvážte použitie TypeScript pre silne napísaný kód, ktorý sa kompiluje s JavaScriptom. V stroji je váš kód kontrolovaný v čase kompilácie, aby sa minimalizovali chyby pri behu vo vašom produkčnom kóde.
- Programovanie
- JavaScript
- Tipy na kódovanie
Mwiza vyvíja softvér podľa povolania a venuje sa rozsiahlej práci pre Linux a front-end programovanie. Medzi jeho záujmy patrí história, ekonómia, politika a podniková architektúra.
Prihlásiť sa ku odberu noviniek
Pripojte sa k nášmu bulletinu s technickými tipmi, recenziami, bezplatnými elektronickými knihami a exkluzívnymi ponukami!
Ešte jeden krok…!
V e-maile, ktorý sme vám práve poslali, potvrďte svoju e-mailovú adresu.