Hva er forskjellen mellom null og udefinert i JavaScript?

Hva er forskjellen mellom null og udefinert i JavaScript?

Denne guiden vil se på forskjellen mellom null og udefinert verdier i JavaScript. Å vite forskjellen mellom disse to verdiene er viktig for feilsøking og opprettelse av feilfri kode.





hvordan du bruker gimp photo editor

Bruk nettleserkonsollen til å følge med eller prøve kodeeksemplene som er omtalt i denne veiledningen.





Sammenligning av likhet mellom null og udefinerte verdier

I JavaScript, null er en primitiv verdi som brukes til å indikere forsettlig fravær av en objektverdi, mens udefinert er en primitiv verdi som fungerer som en plassholder for en variabel som ikke har blitt tildelt en verdi.





Null og udefinert verdiene er like når de sammenlignes med JavaScript -likestillingsoperatøren.

Bruk likestillingsoperatøren ( == ) for å sammenligne hvis null og udefinert verdier er like i JavaScript.



Åpne nettleserkonsollen og skriv inn følgende kode, og trykk deretter på Tast inn.

null == undefined

Utgangen skal gi deg noe som ser slik ut, den returnerte boolske verdien av ekte betyr ganske enkelt at de to verdiene er like.





Finn ut mer: Hvordan deklarere variabler i JavaScript

Streng likestillingssammenligning

JavaScript har også en identitetsoperatør ( === ), også kjent som den strenge likestillingsoperatøren i tillegg til likestillingsoperatøren ( == )





Identitetsoperatøren går den ekstra milen ved å sjekke om den underliggende typen verdier som sammenlignes er den samme. Dette betyr i hovedsak at selv om to verdier er like, er de kanskje ikke identiske eller strengt like hvis de underliggende typene er forskjellige.

For å teste for streng likhet, bruk trippel likhetstegnet som nedenfor.

null === undefined

Resultatet av kommandoen ovenfor gir deg en boolsk verdi på falsk , Med andre ord er de to verdiene ikke identiske, selv om de er like.

Finne ut typen null og udefinert

Bruk den innebygde JavaScript-funksjonen type () for å finne ut den underliggende typen av en verdi. Funksjonen tar en enkelt parameter for verdien hvis type du vil finne.

I slekt: Det ultimate JavaScript -juksearket

typeof(null)

Nullverdien er av typen gjenstand som du kan se fra utgangen nedenfor.

Kjører en lignende test på udefinert verdi vil gi deg et resultat av udefinert .

typeof(undefined)

Arbeider med tall

For å utforske flere forskjeller, utfør talltesten på null og udefinert verdier. Hvis en verdi er et tall, betyr det at vi kan utføre numeriske operasjoner på det.

Det er to hovedmåter å teste om en verdi er et tall i JavaScript.

1. Bruke isFinite () funksjon - hvis verdien under test er et tall, returnerer funksjonen ekte ; ellers kommer den tilbake falsk .

2. Bruke isNaN () funksjon - hvis verdien under test er et tall, returnerer den falsk ; ellers kommer den tilbake ekte .

Merk : erNaN er forkortelse for 'er ikke et tall'.

For å holde ting enkelt, vil denne guiden bare bruke isFinite () funksjon for å teste om verdien er et tall, men prøv også isNaN () funksjon. Begge disse funksjonene tar verdien du vil kjøre talltesten på som en parameter.

isFinite(null)

Resultatet er ekte , mening null er en verdi av typen Nummer i JavaScript. Mens du utfører den samme testen på udefinert returnerer falsk .

isFinite(undefined)

Type Tvang

JavaScript er et løst skrevet språk, og på grunn av dette vil JavaScript automatisk konvertere resultatet til en type det vil ha ved matematiske operasjoner.

Dessverre kan denne automatiske konverteringen, som vanligvis kalles type tvang, bringe mange overraskelser med seg.

Kjør følgende numeriske operasjon på null og udefinert i nettleserkonsollen.

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

Som du kan se, kan du utføre noen numeriske operasjoner på null verdi fordi det er et tall som ikke har noen verdi. Derfor blir det behandlet som en null. Legg merke til det null er ikke lik null i JavaScript, men det blir liksom behandlet slik i dette tilfellet.

De numeriske operasjonene på udefinert verdi resulterer i å returnere NaN (Ikke et tall) verdi. Hvis du ikke behandler det nøye, kan du oppleve dette under kjøretid.

Unngå Runtime Bugs

God forståelse for null og udefinert verdier er avgjørende for å unngå kjøretidsfeil i produksjonskoden. Bugs relatert til udefinert verdier kan være vanskelige å feilsøke og unngås best.

Vurder å bruke TypeScript for sterkt skrevet kode som kompileres til JavaScript. I TypeScript sjekkes koden din ved kompileringstidspunktet for å minimere kjøretidsfeil i produksjonskoden.

Dele Dele kvitring E -post Relaterte temaer
  • Programmering
  • JavaScript
  • Kodetips
Om forfatteren Klar til å gå(36 artikler publisert)

Mwiza utvikler programvare etter yrke og skriver mye om Linux og front-end programmering. Noen av hans interesser inkluderer historie, økonomi, politikk og virksomhetsarkitektur.

Mer fra Mwiza Kumwenda

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis ebøker og eksklusive tilbud!

Klikk her for å abonnere