Sobes.tech
Junior

Care este diferența dintre null și undefined?

sobes.tech AI

Răspuns de la AI

undefined indică absența unei valori atribuite. Variabila este declarată, dar nu i s-a atribuit nicio valoare. Este rezultatul accesării unei proprietăți sau element de matrice care nu există.

null este o atribuire explicită a valorii "absența valorii". Dezvoltatorul indică intenționat că variabila sau proprietatea unui obiect nu au valoare. Este un obiect, dar nu un primitiv de tip (deși typeof null returnează 'object', ceea ce este o eroare istorică a limbajului).

// undefined
let x;
console.log(x); // undefined

const obj = {};
console.log(obj.prop); // undefined

// null
let y = null;
console.log(y); // null

const obj2 = { prop: null };
console.log(obj2.prop); // null