В чем разница между null и undefined?
В чем разница между null и undefined?
Источник: Stack Overflow на русском
В то же время, null и undefined будут считать равными, напр.:
var x = null;
var y;
if (x == y) {
// выполнится
}
Отличие Null и Undefined
Undefined
задается по умолчанию при объявлении переменной, когда мы еще на задали ей какое-то значение (т.е неопределенное отсутствие значения), а Null
мы можем только задать (т.е является определённым значением отсутствия).Null
- в typeof это object
, а undefined
- это undefined
.JSON
- может работать с Null
но не может с Undefined
.Null
и Undefined
при нестрогом сравнении равны друг другу, равны самим себе, и больше ничему. Они являются в логической интерпретации как false
, но при сравнении они не равны false
.undefined
не задают, а если он приходит - а мы ожидали какое-то значение, то где-то есть баг. А Null
- задают целенаправленно.