Зачем это спрашивают
null — примитив, который программист (или API) ставит намеренно: «здесь пусто / значения нет». Это явное «ничто», а не «забыли инициализировать».
let selectedUser = null;
function find(id) {
return db.get(id) ?? null;
}
Особенности
typeof null;
null === null;
null == undefined;
null === undefined;
null — falsy:
Зачем отделять от undefined
| Смысл |
|---|
undefined | система/язык: «не задано» |
null | автор кода: «пусто осознанно» |
В JSON есть null, но нет undefined (поля с undefined обычно выкидываются при stringify).
Итог: null — осознанный маркер отсутствия значения; в API и состоянии UI его часто используют как контракт «пусто».