Sobes.tech
Junior

Opowiedz szczegółowo o wartościach null i undefined w JavaScript.

sobes.tech AI

Odpowiedź od AI

  • niezdefiniowany:

    • Wartość domyślna przypisywana do zmiennych zadeklarowanych, ale nie zainicjalizowanych.
    • Zwracana również przez funkcje, które jawnie nie zwracają wartości.
    • Jest to typ danych prymitywnych.
    • Operator typeof zwraca łańcuch "undefined".
  • null:

    • Wartość jawnie przypisana do zmiennej, aby wskazać brak obiektu.
    • Reprezentuje celowe braki w wartości obiektu.
    • Jest to typ danych prymitywnych, ale operator typeof niepoprawnie zwraca "object" (błąd historyczny).
Właściwość niezdefiniowany null
Pochodzenie Implicite (systemowe) Jawne (programisty)
Typ Prymitywny Prymitywny (chociaż typeof - object)
Wartość Zmienna niezainicjalizowana Brak obiektu
// Przykład undefined
let niezainicjalizowanaZmienna;
console.log(niezainicjalizowanaZmienna); // undefined

function brakWartościZwrotu() {
  // brak return
}
console.log(brakWartościZwrotu()); // undefined
console.log(typeof niezainicjalizowanaZmienna); // undefined

// Przykład null
let zmiennaObiekt = null;
console.log(zmiennaObiekt); // null
console.log(typeof zmiennaObiekt); // object (błąd historyczny)