Sobes.tech
Junior

Podrobněji vysvětlete hodnoty null a undefined v JavaScriptu.

sobes.tech AI

Odpověď od AI

  • nevyjasněno:

    • Implicitní hodnota přiřazená proměnným, které jsou deklarovány, ale nejsou inicializovány.
    • Je také vrácena funkcemi, které explicitně nevracejí žádnou hodnotu.
    • Jedná se o primitivní datový typ.
    • Operátor typeof vrací řetězec "undefined".
  • null:

    • Explicitní hodnota přiřazená proměnné k označení absence jakéhokoliv objektu.
    • Reprezentuje záměrnou nepřítomnost jakékoliv hodnoty objektu.
    • Je to primitivní datový typ, ale operátor typeof nesprávně vrací "object" (historická chyba).
Vlastnost nevyjasněno null
Původ Implicitní (systémem) Explicitní (vývojářem)
Typ Primitivní Primitivní (ačkoliv typeof - object)
Hodnota Nedefinovaná proměnná Nepřítomnost objektu
// Příklad undefined
let nedefinovanáProměnná;
console.log(nedefinovanáProměnná); // undefined

function bezHodnoty() {
  // žádný return
}
console.log(bezHodnoty()); // undefined
console.log(typeof nedefinovanáProměnná); // undefined

// Příklad null
let objektProměnná = null;
console.log(objektProměnná); // null
console.log(typeof objektProměnná); // object (historická chyba)