Koja je razlika između nultog i nedefiniranog u JavaScriptu?

Koja je razlika između nultog i nedefiniranog u JavaScriptu?

Ovaj vodič će pogledati razliku između null i nedefiniran vrijednosti u JavaScriptu. Poznavanje razlike između ove dvije vrijednosti važno je za ispravljanje pogrešaka i stvaranje koda bez grešaka.





kako svoje slike učiniti privatnima na facebooku

Pratite zajedno s konzolom preglednika ili isprobajte uzorke koda o kojima se govori u ovom vodiču.





Usporedba jednakosti nultih i nedefiniranih vrijednosti

U JavaScriptu, null je primitivna vrijednost koja se koristi za označavanje namjernog odsustva vrijednosti objekta, dok nedefiniran je primitivna vrijednost koja djeluje kao rezervirano mjesto za varijablu kojoj nije dodijeljena vrijednost.





Null i nedefiniran vrijednosti su jednake u usporedbi pomoću operatora jednakosti JavaScript.

Koristite operator jednakosti ( == ) za usporedbu ako null i nedefiniran vrijednosti su jednake u JavaScriptu.



Otvorite konzolu preglednika i unesite sljedeći kôd, a zatim pritisnite Unesi.

null == undefined

Izlaz bi trebao dati nešto što izgleda ovako, vraćenu logičku vrijednost od pravi jednostavno znači da su dvije vrijednosti jednake.





Saznajte više: Kako deklarirati varijable u JavaScript -u

Usporedba stroge jednakosti

JavaScript također ima operatora identiteta ( === ), poznat i kao operator stroge jednakosti pored operatora jednakosti ( == )





Operater identiteta čini dodatni korak provjeravajući je li temeljna vrsta vrijednosti koje se uspoređuju ista. To u biti znači da, iako su dvije vrijednosti jednake, one možda neće biti identične ili strogo jednake ako su njihovi osnovni tipovi različiti.

Za provjeru stroge jednakosti upotrijebite trostruki znak jednakosti kako je dolje.

null === undefined

Rezultat gornje naredbe dat će vam logičku vrijednost lažno , Drugim riječima, dvije vrijednosti nisu identične iako su jednake.

Otkrivanje vrste ništavog i nedefiniranog

Koristite ugrađenu JavaScript funkciju vrsta() kako bi saznali temeljnu vrstu vrijednosti. Funkcija uzima jedan parametar vrijednosti čiju vrstu želite pronaći.

Povezano: Ultimate JavaScript Cheat Sheet

typeof(null)

Nulta vrijednost je tipa objekt kao što možete vidjeti iz donjeg prikaza.

Pokretanje sličnog testa na nedefiniran vrijednost će vam dati rezultat nedefiniran .

typeof(undefined)

Rad s brojevima

Da biste istražili više razlika, provedite provjeru broja null i nedefiniran vrijednosti. Ako je vrijednost broj, to znači da nad njom možemo izvesti numeričke operacije.

Postoje dva glavna načina za provjeru je li vrijednost broj u JavaScript -u.

1. Pomoću isFinite () funkcija - ako je testirana vrijednost broj, funkcija se vraća pravi ; u suprotnom se vraća lažno .

2. Pomoću isNaN () funkcija - ako je testirana vrijednost broj, onda se vraća lažno ; u suprotnom se vraća pravi .

Bilješka : isNaN je kratica za 'nije broj'.

Da pojednostavimo stvari, ovaj će vodič koristiti samo isFinite () funkciju za provjeru je li vrijednost broj, ali slobodno isprobajte i isNaN () funkcija. Obje ove funkcije uzimaju vrijednost za koju želite pokrenuti provjeru broja kao parametar.

isFinite(null)

Rezultat je pravi , značenje null je vrijednost tipa broj u JavaScriptu. Dok, provođenje istog testa na nedefiniran vraća lažno .

isFinite(undefined)

Vrsta Prisila

JavaScript je slabo otkucan jezik i zbog toga će prilikom izvođenja matematičkih operacija JavaScript automatski pretvoriti rezultat u vrstu koju želi.

Nažalost, ova automatska pretvorba, koja se obično naziva prisila tipa, može donijeti mnoga iznenađenja.

Pokrenite sljedeću numeričku operaciju na null i nedefiniran u konzoli preglednika.

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

Kao što vidite, možete izvršiti neke numeričke operacije na null vrijednost jer je to broj koji nema vrijednost. Stoga se tretira kao nula. Uzmite u obzir da null nije jednak nula u JavaScriptu, ali se u ovom slučaju nekako tako tretira.

Numeričke operacije na nedefiniran vrijednost rezultat u vraćanju NaN Vrijednost (nije broj). Ako se ne postupa pažljivo, mogli biste to doživjeti tijekom izvođenja.

Izbjegavanje grešaka tijekom rada

Dobro razumijevanje null i nedefiniran vrijednosti su vitalne za izbjegavanje grešaka u vrijeme izvođenja u vašem proizvodnom kodu. Greške povezane s nedefiniran vrijednosti se mogu teško otkloniti i najbolje ih je izbjegavati.

Razmislite o upotrebi TypeScript za strogo kucani kod koji se kompilira u JavaScript. U TypeScript-u vaš se kôd provjerava u vrijeme kompajliranja kako bi se minimizirale pogreške tijekom izvođenja u vašem proizvodnom kodu.

Udio Udio Cvrkut E -pošta Povezane teme
  • Programiranje
  • JavaScript
  • Savjeti za kodiranje
O autoru Dobro krenuti(36 objavljenih članaka)

Mwiza razvija softver po struci i opsežno piše o Linuxu i front-end programiranju. Neki od njegovih interesa uključuju povijest, ekonomiju, politiku i arhitekturu poduzeća.

Više od Mwize Kumwende

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu