🔍 Сравнение NaN и undefined
🔹 NaN — это специальное значение, которое представляет "не число". Оно возникает как результат некорректной математической операции. Важно отметить следующие особенности NaN:
Самый заметный "подводный камень" - NaN не равно самому себе. То есть, NaN === NaN вернет false.
Для проверки на NaN лучше использовать функцию isNaN().
🔹 undefined — это специальное значение, которое указывает на то, что переменная была объявлена, но не инициализирована значением.
🧐 Строгое сравнение (===)
При строгом сравнении, тип данных и значение обоих операндов должны быть идентичными.
NaN === NaN – вернет FALSE.
undefined === undefined – вернет TRUE.
NaN === undefined – вернет FALSE, так как NaN и undefined являются различными типами данных.
😃 Нестрогое сравнение (==)
Нестрогое сравнение сравнивает значения, но не учитывает типы данных, что может привести к некоторым неожиданным результатам.
NaN == NaN – вернет FALSE, так как NaN не равно ничему, даже самому себе.
undefined == undefined – вернет TRUE.
NaN == undefined – вернет FALSE, несмотря на то, что сравнение не строгое, NaN и undefined остаются неравными.
#JavaScript #NaN #undefined #ОбучающийПост
🔹 NaN — это специальное значение, которое представляет "не число". Оно возникает как результат некорректной математической операции. Важно отметить следующие особенности NaN:
Самый заметный "подводный камень" - NaN не равно самому себе. То есть, NaN === NaN вернет false.
Для проверки на NaN лучше использовать функцию isNaN().
🔹 undefined — это специальное значение, которое указывает на то, что переменная была объявлена, но не инициализирована значением.
🧐 Строгое сравнение (===)
При строгом сравнении, тип данных и значение обоих операндов должны быть идентичными.
NaN === NaN – вернет FALSE.
undefined === undefined – вернет TRUE.
NaN === undefined – вернет FALSE, так как NaN и undefined являются различными типами данных.
😃 Нестрогое сравнение (==)
Нестрогое сравнение сравнивает значения, но не учитывает типы данных, что может привести к некоторым неожиданным результатам.
NaN == NaN – вернет FALSE, так как NaN не равно ничему, даже самому себе.
undefined == undefined – вернет TRUE.
NaN == undefined – вернет FALSE, несмотря на то, что сравнение не строгое, NaN и undefined остаются неравными.
#JavaScript #NaN #undefined #ОбучающийПост