Аксель Раушмайер написал статью про отличия между undefined и | Defront (при поддержке Зарплата.ру) — про фронтенд-разработку и не только
Аксель Раушмайер написал статью про отличия между undefined и null — "undefined vs. null revisited".
Спецификация описывает эти значения следующим образом: undefined используется как значение по умолчанию в неинициализированных переменных; null используется как значение, которое явно устанавливается разработчиком как признак отсутствия любого объектного значения.
Для выбора между undefined и null Аксель использует правило: undefined — это метазначение, которое существует на уровень выше кода программы, и оно означает, что что-то не существует или отсутствует; null — существует на уровне кода программы, и оно означает, что что-то "отключено".
Мне не очень нравится метафора с "отключением" с помощью null, но нравится идея undefined как метазначения. Как бы то ни было, статья полезная, рекомендую почитать.
#js
https://2ality.com/2021/01/undefined-null-revisited.html