Sobes.tech
Junior

Mi a különbség a null és az undefined között?

sobes.tech MI

Válasz az MI-től

Az undefined azt jelzi, hogy nincs hozzárendelve érték. A változó deklarálva van, de nem kapott értéket. Ez az eredménye annak, amikor egy nem létező tulajdonsághoz vagy tömb elemhez próbálunk hozzáférni.

A null egyértelmű értékadás "érték hiányára". A fejlesztő szándékosan jelzi, hogy a változó vagy az objektum tulajdonsága érték nélkül van. Ez egy objektum, de nem primitív típus (bár a typeof null 'object'-et ad vissza, ami a nyelv történelmi hibája).

// 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