-
null
- это пустое или несуществующее значение
-
null
должен быть присвоен
-
undefined
чаще всего означает, что переменная была объявлена, но не определена
- при поиске несуществующих ключей в объекте мы также получим
undefined
- при использовании
typeof
для проверки
null
он возвращает объект,
undefined
же возвращает
undefined
- в функции с параметрами по умолчанию
undefined
будет использовать значение по умолчанию, а
null
- нет
- JSON может обрабатывать только
null
, но не
undefined
Взял вот
отсюда. Там расписано подробнее и с примерами, если интересно.