Téma: JavaScript / jQueryPrev | Következő
Válasz: Használja az egyenlőség operátort (==)
JavaScriptben, ha változót deklaráltak , de nem rendelt hozzá értéket, automatikusan a undefined
értéket kapja. Ezért, ha megpróbálja megjeleníteni egy ilyen változó értékét, megjelenik a “undefined” szó. Míg a null
egy speciális hozzárendelési érték, amely hozzárendelhető egy változóhoz érték nélküli ábrázolásként.
Egyszerű szavakkal mondhat egy null
érték azt jelenti, hogy nincs érték vagy annak hiánya, és a undefined
azt a változót jelenti, amelyet deklaráltak, de még nem rendeltek értéket.
Annak ellenőrzéséhez, hogy egy változó nincs-e definiálva vagy null, használhatja a ==
egyenlőség operátort vagy a szigorú egyenlőség operátort ===
(szintén azonosító operátornak hívják). Vessünk egy pillantást a következő példára:
Ha a null
értékeket megpróbálja tesztelni a typeof
operátor nem fog működni a várt módon, mert a JavaScript “null” helyett “objektumot” ad vissza az typeof null
fájlhoz.
Ez egy régóta fennálló hiba a JavaScript-ben , de mivel a weben sok kód íródott erre a viselkedésre, és így javítva sokkal több problémát okozhat, ezért a JavaScript megtervezésével és karbantartásával foglalkozó bizottság felhagyott a probléma megoldásának ötletével.
Megjegyzés: A undefined
nem fenntartott kulcsszó a JavaScript-ben, és így változó néven deklarálható undefined. Tehát a undefined
változó vagy tulajdonság tesztelésének helyes módja a typeof
operátor használata, például: if(typeof myVar === "undefined")
.
Kapcsolódó GYIK
Íme néhány további GYIK a témához kapcsolódóan:
- Hogyan annak ellenőrzése, hogy létezik-e vagy nincs-e meghatározva egy változó a JavaScript-ben
- Hogyan ellenőrizhető, hogy az érték numerikus-e vagy sem a jQuery-ben
- Hogyan ellenőrizhető, hogy létezik-e érték egy tömbben a JavaScript-ben