Sobes.tech
Junior

Spuneți mai multe despre valorile null și undefined în JavaScript.

sobes.tech AI

Răspuns de la AI

  • nedefinit:

    • Valoare implicită atribuită variabilelor declarate, dar neinițializate.
    • De asemenea, este returnată de funcții care nu returnează explicit nicio valoare.
    • Este un tip de date primitiv.
    • Operatorul typeof returnează șirul "undefined".
  • null:

    • Valoare explicită atribuită unei variabile pentru a indica absența oricărui obiect.
    • Reprezintă absența intenționată a oricărui valoare de obiect.
    • Este un tip de date primitiv, dar operatorul typeof returnează incorect "object" (bug istoric).
Proprietate nedefinit null
Origine Implicit (de sistem) Explicit (de dezvoltator)
Tip Primitiv Primitiv (deși typeof - object)
Valoare Variabilă neinițializată Absența unui obiect
// Exemplu de nedefinit
let variabilaNeinitializata;
console.log(variabilaNeinitializata); // undefined

function faraValoareDeReturn() {
  // fără return
}
console.log(faraValoareDeReturn()); // undefined
console.log(typeof variabilaNeinitializata); // undefined

// Exemplu de null
let variabilaObiect = null;
console.log(variabilaObiect); // null
console.log(typeof variabilaObiect); // object (bug istoric)