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