Hur man avgör om variabel är odefinierad eller null i JavaScript

Annonser

Ämne: JavaScript / jQueryPrev | Nästa

Svar: Använd likhetsoperatören (==)

I JavaScript om en variabel har deklarerats , men har inte tilldelats något värde, tilldelas värdet automatiskt undefined. Därför, om du försöker visa värdet på en sådan variabel, kommer ordet ”odefinierad” att visas. Medan null är ett speciellt tilldelningsvärde som kan tilldelas en variabel som en representation av inget värde.

Med enkla ord kan du säga en null värde betyder inget värde eller frånvaro av ett värde, och undefined betyder en variabel som har deklarerats men som ännu inte tilldelats ett värde.

För att kontrollera om en variabel är odefinierad eller null kan du använda likhetsoperatören == eller strikt likhetsoperator === (även kallad identitetsoperatör). Låt oss ta en titt på följande exempel:

Om du försöker testa null värdena med typeof operatör fungerar det inte som förväntat, eftersom JavaScript returnerar ”objekt” för typeof null istället för ”null”.

Detta är ett långvarigt fel i JavaScript , men eftersom många koder på webben skrivs kring detta beteende och därmed fixar det skulle skapa mycket mer problem, så idén om att åtgärda problemet övergavs av kommittén som utformar och underhåller JavaScript.

Obs: undefined är inte ett reserverat nyckelord i JavaScript, och det är således möjligt att deklarera en variabel med namnet undefined. Så rätt sätt att testa undefined variabel eller egenskap är att använda operatorn typeof, så här: if(typeof myVar === "undefined").

Relaterade frågor

Här är några fler vanliga frågor om detta ämne:

  • Hur för att kontrollera om en variabel finns eller definieras i JavaScript
  • Hur man kontrollerar om ett värde är numeriskt eller inte i jQuery
  • Hur man kontrollerar om ett värde finns i en matris i JavaScript
Annonser

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *