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:

  1. Nedefinovaná znamená, že premenná bola deklarovaná, ale zatiaľ jej nebola priradená hodnota.
  2. „Null“ je hodnota priradenia, ktorá znamená „žiadna hodnota“.
  3. „Nedefinované“ a „nulové“ sú primitívne.
  4. „Nedefinovaný“ je nedefinovaného typu.
  5. „Null“ je typu objektu.
  6. JavaScript nikdy nenastavil hodnotu na „null“, programátori ju používajú na označenie, že „var“ nemá žiadnu hodnotu.
  7. JavaScript nastavil nepriradenú premennú s predvolenou hodnotou „undefined“.
  8. „Undefined“ nie je platná hodnota v JSON (notifikácia objektu JavaScript), zatiaľ čo „null“ je platná hodnota v JSON.
  9. Jeden môže skontrolovať, či je premenná nedefinovaná pomocou: type premennej === „undefined“
  10. Spôsob, ako skontrolovať, či je premenná null pomocou: premennej === null
  11. 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
  12. Hodnota „null“ predstavuje úmyselnú neprítomnosť akejkoľvek hodnoty objektu. Je to jedna z primitívnych hodnôt JavaScriptu.
  13. 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.
  14. „Undefined“ je globálna premenná, ktorú JavaScript vytvára za behu.
  15. 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
  16. „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 nullnedefinovanýNulový
definíciaPremenná bola deklarovaná, ale zatiaľ jej nebola priradená hodnotahodnota priradenia, ktorá znamená „žiadna hodnota“
typnedefinovanýobjekt
JSONneplatnýplatný
prírodaPremenná deklarovaná, ale zatiaľ nepridelenáPredstavujú úmyselnú neprítomnosť hodnoty objektu
checktypeof variableName === “undefined”variableName === null
AritmetikaChyba typu Ne-číslo (NaN)považované za nulovú hodnotu
PorovnanieOperátor rovnosti sa vráti trueOperátor identity vráti false
identifikátorMôže byť identifikátorom vlastnosti globálneho objektuNie 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 -

  1. Go vs Java - Užitočné rozdiely
  2. Rozdiely medzi Django a WordPress
  3. JavaScript vs C #
  4. XML vs HTML - ktorý z nich je lepší
  5. Výkon Java vs Python

Kategórie: