В чем разница между null и undefined

Ответ

null и undefined оба обозначают отсутствие значения, но с разными контекстами:

  • undefined — переменная объявлена, но значение не присвоено, или свойство объекта отсутствует.
  • null — явное указание на отсутствие значения (например, результат ручного присваивания).

Пример:

let a;          // a === undefined (не инициализировано)
let b = null;   // b === null (явное "ничего")

const obj = {};
obj.prop;       // undefined (свойства нет)
obj.prop = null // явно установили null