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

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

В этом руководстве будет рассмотрена разница между нулевой а также неопределенный значения в JavaScript. Знание разницы между этими двумя значениями важно для отладки и создания кода без ошибок.





лучший джойстик для авиасимулятора 2020

Воспользуйтесь консолью браузера, чтобы проследить или опробовать примеры кода, описанные в этом руководстве.





Сравнение равенства нулевых и неопределенных значений

В JavaScript нулевой - это примитивное значение, которое используется для обозначения преднамеренного отсутствия значения объекта, тогда как неопределенный является примитивным значением, которое действует как заполнитель для переменной, которой не было присвоено значение.





Нулевой а также неопределенный значения равны при сравнении с использованием оператора равенства JavaScript.

Используйте оператор равенства ( == ) для сравнения, если нулевой а также неопределенный значения равны в JavaScript.



Откройте консоль браузера и введите следующий код, затем нажмите Входить.

null == undefined

Результат должен дать вам что-то похожее на это, возвращенное логическое значение правда просто означает, что два значения равны.





Узнать больше: как объявлять переменные в JavaScript

Строгое сравнение равенства

В JavaScript также есть оператор идентификации ( === ), также известный как оператор строгого равенства в дополнение к оператору равенства ( == )





Оператор идентификации делает все возможное, проверяя, совпадает ли базовый тип сравниваемых значений. По сути, это означает, что даже если два значения равны, они могут не быть идентичными или строго равными, если их базовые типы различны.

Чтобы проверить строгое равенство, используйте тройной знак равенства, как показано ниже.

null === undefined

Результат приведенной выше команды даст вам логическое значение ложный Другими словами, эти два значения не идентичны, даже если они равны.

Определение типа нулевого и неопределенного

Используйте встроенную функцию JavaScript тип() чтобы узнать базовый тип значения. Функция принимает единственный параметр значения, тип которого вы хотите найти.

Связанный: Полная шпаргалка по JavaScript

typeof(null)

Нулевое значение имеет тип объект как видно из вывода ниже.

Проведение аналогичного теста на неопределенный значение даст вам результат неопределенный .

typeof(undefined)

Работа с числами

Чтобы узнать больше о различиях, проведите числовой тест на нулевой а также неопределенный ценности. Если значение является числом, это означает, что мы можем проводить с ним числовые операции.

Есть два основных способа проверить, является ли значение числом в JavaScript.

1. Использование isFinite () функция - если проверяемое значение является числом, функция возвращает правда ; в противном случае он возвращается ложный .

2. Использование isNaN () функция - если проверяемое значение является числом, возвращается ложный ; в противном случае он возвращается правда .

Примечание : isNaN является сокращением от 'не число'.

Для простоты в этом руководстве будет использоваться только isFinite () функция, чтобы проверить, является ли значение числом, но не стесняйтесь также попробовать isNaN () функция. Обе эти функции принимают значение, для которого вы хотите запустить числовой тест, в качестве параметра.

isFinite(null)

Результат правда , имея в виду нулевой это значение типа количество в JavaScript. Принимая во внимание, что проведение того же теста на неопределенный возвращается ложный .

isFinite(undefined)

Тип Принуждение

JavaScript - это слабо типизированный язык, и поэтому при выполнении математических операций JavaScript автоматически преобразует результат в желаемый тип.

К сожалению, это автоматическое преобразование, которое обычно называют приведением типов, может принести много сюрпризов.

Выполните следующую числовую операцию над нулевой а также неопределенный в консоли вашего браузера.

1 + null 3 * null 1 + undefined 3 * undefined;

Как видите, вы можете выполнять некоторые числовые операции с нулевой значение, потому что это число, не имеющее значения. Следовательно, он рассматривается как ноль. Обратите внимание, что нулевой не равно нуль в JavaScript, но в данном случае это как-то так.

Числовые операции над неопределенный значение приводит к возврату NaN (Не числовое) значение. Если не обращаться с ним осторожно, вы можете столкнуться с этим во время выполнения.

Как избежать ошибок во время выполнения

Хорошее понимание нулевой а также неопределенный values ​​жизненно важен для предотвращения ошибок времени выполнения в вашем производственном коде. Ошибки, связанные с неопределенный значения может быть трудно отладить, и их лучше избегать.

Рассмотрите возможность использования TypeScript для строго типизированного кода, который компилируется в JavaScript. В TypeScript ваш код проверяется во время компиляции, чтобы минимизировать ошибки времени выполнения в вашем производственном коде.

Делиться Делиться Твитнуть Эл. адрес Похожие темы
  • Программирование
  • JavaScript
  • Советы по кодированию
Об авторе Хорошо пойти(Опубликовано 36 статей)

Мвиза занимается разработкой программного обеспечения по профессии и много пишет о Linux и интерфейсном программировании. Некоторые из его интересов включают историю, экономику, политику и архитектуру предприятий.

Ещё от Mwiza Kumwenda

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться