Junior
Qual è la differenza tra null e undefined?
sobes.tech AI
Risposta dell'AI
undefined indica l'assenza di un valore assegnato. La variabile è dichiarata, ma a essa non è stato assegnato alcun valore. È il risultato dell'accesso a una proprietà o elemento di array inesistente.
null è un'assegnazione esplicita del valore "assenza di valore". Lo sviluppatore indica intenzionalmente che la variabile o la proprietà di un oggetto non hanno valore. È un oggetto, ma non un primitivo per tipo (anche se typeof null restituisce 'object', il che è un errore storico del linguaggio).
// 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