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


В чем разница между null и undefined в JavaScript?
Рейтинг: 5.0/1
Просмотров: 23 | Добавил: (03.03.2023) (Изменено: 03.03.2023)
Всего ответов: 2
Обсуждение вопроса:
Всего ответов: 2
Аватар
0

03.03.2023 оставил(а) комментарий:
1) они принадлежат к 7 примитивным типам ('string', 'number', 'null', 'undefined', 'boolean', 'symbol', 'bigint')

2) они являются ложными значениями (console.log(!!null) // falseconsole.log(!!undefined) // false)

3) undefined («неопределенный») представляет собой неопределенное значение по умолчанию

4) null — значение отсутствия значения; null — это значение, которое присваивается переменной явно.
Аватар
0

03.03.2023 оставил(а) комментарий:
Для начала давайте поговорим о том, что у них общего.

Во-первых, они принадлежат к 7 «примитивам» (примитивным типам) JS:

let primitiveTypes = ['string', 'number', 'null', 'undefined', 'boolean', 'symbol', 'bigint']

Во-вторых, они являются ложными значениями, т.е. результатом их преобразования в логическое значение с помощью Boolean() или оператора "!!" является false:

console.log(!!null) // false
console.log(!!undefined) // false

console.log(Boolean(null)) // false
console.log(Boolean(undefined)) // false

А теперь о различиях.

undefined («неопределенный») представляет собой значение по умолчанию:
• переменной, которой не было присвоено значения, т.е. объявленной, но не инициализированной переменной;
• функции, которая ничего не возвращает явно, например, console.log(1);
• несуществующего свойства объекта.

null — это «значение отсутствия значения». null — это значение, которое присваивается переменной явно.

При сравнении null и undefined мы получаем true, когда используем оператор "==", и false при использовании оператора "===".

console.log(null == undefined) // true
console.log(null === undefined) // false
avatar