Rozdiely medzi nedefinovanými a null
V JavaScripte sú premenné rovnaké ako diaľkové ovládanie, ktoré skutočne riadi daný objekt. Ak diaľkový ovládač nie je naprogramovaný na ovládanie ktoréhokoľvek z objektov, môže byť označený ako nedefinovaný. Na druhej strane, ak je diaľkové ovládanie naprogramované, ale nerobí nič, možno ho priradiť Null. Null je hodnota priradenia, môže byť priradená k premennej ako reprezentácia bez hodnoty. Nedefinovaný je samotný typ, zatiaľ čo null je objekt. Takže undefined je špeciálny typ, zatiaľ čo Null je objekt v JavaScripte.
Pod útržkom kódu JavaScript bude daný výstup nedefinovaný.
var x;
console.log (x); ð nedefinované |
Ak niekto skontroluje typ nulovej hodnoty, vytlačí výstup ako „objekt“, ako je to znázornené na útržku kódu JavaScript nižšie:
console.log (typ null);
ð predmet |
Môžeme teda povedať, že nedefinovaná znamená premennú, ktorá bola deklarovaná, ale jej hodnota ešte nie je definovaná. Nedefinované je typu „nedefinované“, ktoré je možné skontrolovať zdola pomocou útržku kódu JavaScript:
var test;
Console.log (typof test); ð nedefinované |
Jeden môže tiež deklarovať premennú a potom jej priradiť „undefined“, ako je uvedené nižšie:
var test = nedefinovaný;
Console.log (test); ð nedefinované |
Nepriradené premenné sú inicializované pomocou JavaScriptu s predvolenou hodnotou undefined, zatiaľ čo JavaScript nikdy nenastavuje hodnotu na null automaticky, musí sa to urobiť programovo.
Porovnanie Head to Head medzi Undefined vs Null
Nižšie je prvých 8 porovnaní medzi Javascript undefined vs Null
Kľúčové rozdiely medzi Javascript Undefined vs Null
Neurčené vs Null sú na trhu populárne voľby; porozprávajme sa o niektorých hlavných rozdieloch medzi nedefinovanými a null:
- Nedefinovaná znamená, že premenná bola deklarovaná, ale zatiaľ jej nebola priradená hodnota.
- „Null“ je hodnota priradenia, ktorá znamená „žiadna hodnota“.
- „Nedefinované“ a „nulové“ sú primitívne.
- „Nedefinovaný“ je nedefinovaného typu.
- „Null“ je typu objektu.
- JavaScript nikdy nenastavil hodnotu na „null“, programátori ju používajú na označenie, že „var“ nemá žiadnu hodnotu.
- JavaScript nastavil nepriradenú premennú s predvolenou hodnotou „undefined“.
- „Undefined“ nie je platná hodnota v JSON (notifikácia objektu JavaScript), zatiaľ čo „null“ je platná hodnota v JSON.
- Jeden môže skontrolovať, či je premenná nedefinovaná pomocou: type premennej === „undefined“
- Spôsob, ako skontrolovať, či je premenná null pomocou: premennej === null
- Operátor rovnosti bude s nimi zaobchádzať ako s rovnocennými, zatiaľ čo operátor identity nebude s nimi zaobchádzať ako s rovnocennými. null === undefined // false null == undefined // true
- Hodnota „null“ predstavuje úmyselnú neprítomnosť akejkoľvek hodnoty objektu. Je to jedna z primitívnych hodnôt JavaScriptu.
- Null je písaný doslovne: „null“. Nie je to identifikátor pre vlastnosť globálneho objektu, napríklad „nedefinovaný“ môže byť. „Null“ znamená nedostatočnú identifikáciu, čo znamená, že premenná ukazuje na žiadny objekt.
- „Undefined“ je globálna premenná, ktorú JavaScript vytvára za behu.
- Keď jeden vykoná aritmetickú konverziu na „null“, určená hodnota je 0, túto konverziu je možné overiť: var v1 = 3 + null; console.log (v1); // 3
- „Undefined“ nevykonáva aritmetickú konverziu ako „null“, ak sa ho pokúsime pridať do číslice, zobrazí sa chyba NaN (nie-a-číslo).
Porovnávacia tabuľka nedefinovaná verzus null
Nižšie je uvedený zoznam bodov. Opíšte porovnanie medzi Javascript Undefined vs Null
ZÁKLAD porovnania medzi nedefinovanými verzus null | nedefinovaný | Nulový |
definícia | Premenná bola deklarovaná, ale zatiaľ jej nebola priradená hodnota | hodnota priradenia, ktorá znamená „žiadna hodnota“ |
typ | nedefinovaný | objekt |
JSON | neplatný | platný |
príroda | Premenná deklarovaná, ale zatiaľ nepridelená | Predstavujú úmyselnú neprítomnosť hodnoty objektu |
check | typeof variableName === “undefined” | variableName === null |
Aritmetika | Chyba typu Ne-číslo (NaN) | považované za nulovú hodnotu |
Porovnanie | Operátor rovnosti sa vráti true | Operátor identity vráti false |
identifikátor | Môže byť identifikátorom vlastnosti globálneho objektu | Nie je identifikátorom vlastnosti globálneho objektu |
Záver - Nedefinované verzus Null
Ľudia väčšinou nepochopili rozdiel medzi hodnotou Undefined a Null. Ak rozdiel medzi nedefinovaným a null zostáva nejasný, môže to v určitých testovacích prípadoch viesť k problémom.
Premennú možno označiť za „nedefinovanú“, ak je deklarovaná, ale nebola jej poskytnutá žiadna hodnota. Na druhej strane „null“ je hodnota, ktorá môže byť priradená premennej a predstavuje „žiadna hodnota“. Preto „nedefinovaný“ je typ premennej, kde „null“ je hodnota objektu.
„Null“ sa za nič nestane. Znamená to, že sme premennej úmyselne priradili hodnotu, a preto premennej predpokladáme hodnotu ničoho. Pri kontrole nulových alebo nedefinovaných je potrebné poznať operátory rovnosti (==) a identity (===), pretože bývalí prevádzajú prevod typov.
typeof null // object typ nedefinovaného // nedefinovaného null === undefined // false null == undefined // true null == null // true null === null // true ! null // true isNaN (1 + null) // false isNaN (1 + undefined) // true |
Takže pokiaľ ide o rozdiel v type, „null“ je objekt s platnou hodnotou, ktorá nemá vlastnosti, nie je zameniteľný a v systéme stále existuje jedna inštancia. Jeden môže overiť povahu „null“ pomocou operátora „type“. Použitie tohto operátora poskytne výstup ako „objekt“. Ak použijeme operátor „typ“ na objekte, ktorý patrí do všetkých kritérií nedefinovaného zoznamu, dostaneme typ objektu ako „nedefinovaný“.
Ďalší hlavný rozdiel medzi nedefinovaným vs. nulovým je možné uzavrieť konverziou na primitívne typy. Spôsob, ako sa nedefinované verzus null prevádzajú na primitívne typy, je kľúčovou oblasťou pre diferenciáciu. Počas aritmetickej konverzie na „null“ je určená hodnota nula. „Nedefinované“ však nemá taký prevod. Ak sa k číslu pokúsime pridať „nedefinované“, zobrazí sa chyba Ne-číslo.
Použitie „nulového“ môže byť veľmi užitočné v scenári skutočného sveta. Napríklad - Niektorí ľudia nemajú stredné meno. V tomto prípade je preto lepšie priradiť hodnotu null strednej premennej názvu v objekte osoby. Ak niekto pristupuje k premennej stredného mena v osobnom objekte a má hodnotu „nedefinovaná“. Potom nie je možné zistiť, či vývojár zabudol inicializovať túto premennú alebo nemal žiadnu hodnotu. Ak je priradená ako null, znamená to, že používateľ môže ľahko odvodiť, že premenná stredného názvu nemá žiadnu hodnotu.
Aby som to zhrnul, „null“ a „undefined“ majú rôzne významy. Kým „null“ je špeciálne kľúčové slovo, ktoré naznačuje neprítomnosť hodnoty, „nedefinované“ znamená „neexistuje“. Existujú situácie, keď pomáha rozlíšiť „nulovú hodnotu“ a „žiadnu hodnotu“. Pri odosielaní aktualizácií pre zoznam môže znamenať „null“, nahradiť toto pole „null“ a nedefinované môžu znamenať „nedotýkať sa“. Pri riešení predvolených funkčných parametrov: nedefinovaná znamená „použiť predvolenú hodnotu“ a null znamená „použiť nulovú hodnotu“. Mať Undefined vs Null ako dve odlišné veci v JavaScripte môže byť úprimne bolestivé, ak je však vývojárom JavaScriptu, môže sa mu to páčiť.
Odporúčaný článok
Toto bol návod na najväčší rozdiel medzi hodnotou Nedefinovaná verzus Null. Tu diskutujeme aj kľúčové rozdiely Javascript undefined verzus Null s infografikou a porovnávaciu tabuľku. Môžete sa tiež pozrieť na nasledujúce články -
- Go vs Java - Užitočné rozdiely
- Rozdiely medzi Django a WordPress
- JavaScript vs C #
- XML vs HTML - ktorý z nich je lepší
- Výkon Java vs Python