NaN 属性代表一个“不是数字”的值。这个特殊的值是因为运算不能执行而导致的,不能执行的原因要么是因为其中的运算对象之一非数字。例如: "abc" / 4,要么是因为运算的结果非数字。例如:除数为零。

虽然这看上去很简单,但 NaN 有一些令人惊讶的特点,如果你不知道它们的话,可能会导致令人头痛的bug。

首先,虽然 NaN 意味着“不是数字”,但是它的类型,不管你信不信,是 Number:

console.log(typeof NaN === "number");  // logs "true"

此外, NaN 和任何东西比较,甚至是它自己本身,结果是false:

console.log(NaN === NaN);  // logs "false"

一种半可靠的方法来测试一个数字是否等于 NaN,是使用内置函数 isNaN(),但即使使用 isNaN() 依然并非是一个完美的解决方案。

一个更好的解决办法是使用 value !== value,如果值等于NaN,只会产生true。因为只有NaN 这货,才会自己不等于自己。

热门文章

原创教程

原创教程:

附加习题:

趣味职场

职场焦虑:

感到迷茫:

培训出身:

培训费用:

搞笑黑话:

职业自由:

职场形象:

合作推广分割线

经典面试题(6):NaN 是什么?如何测试一个值是否等于 NaN ?相关推荐

  1. NaN 是什么?它的类型是什么?如何可靠地测试一个值是否等于 NaN ?

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/bianliuzhu/article/d ...

  2. python判断一个值是否为Nan,NULL

    python判断一个值是否为Nan,NULL 在实际的实验中,我们经常会遇到输出为Nan或者NULL的情况,那么我们该如何去判断它,然后用if语句将其规避勒 方案一如下: import numpy a ...

  3. 前端经典面试题 不经典不要star!

    前言 (以下内容为一个朋友所述)今天我想跟大家分享几个前端经典的面试题,为什么我突然想写这么一篇文章呢?今天我应公司要求去面试了下几位招聘者,然后又现场整不出几个难题,就搜了一下前端变态面试题! HA ...

  4. 2019最新Web前端经典面试试题及答案,持续更新

    Ps: 文章所述内容,来源渠道平时积累以及网上摘录.按日期持续更新...目录: 转载请注明来源. -2018/6/8   1.position的定位方式 2.描述下从输入URL到整个网页加载完毕及显示 ...

  5. python经典面试题100例 面试宝典

    人生苦短 我用 Python 芝麻开门! python 进阶 1 python 经典面试题 9 python 面试 100 例 21 python 面试题总结 101 python 进阶 1 PEP8 ...

  6. 20道JavaScript经典面试题

    该篇文章整理了一些前端经典面试题,附带详解,涉及到JavaScript多方面知识点,满满都是干货-建议收藏阅读 前言 如果这篇文章有帮助到你,❤️关注+点赞❤️鼓励一下作者,文章公众号首发,关注 前端 ...

  7. 2023最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)

    近期总结一一些面试题 都是企业的面试题笔记题 感觉薪资10k-15k的常见面试题 个人录制的最新Vue项目学习视频:B站 小胖梅-的个人空间_哔哩哔哩_Bilibili 红色为常见面试题 ====== ...

  8. JavaScript前端经典面试题之ES6面试题汇总es6

    推荐阅读: vue3面试题:最新vue3.0前端经典面试试题及答案(持续更新中--)_南北极之间的博客-CSDN博客打包大小减少41%初次渲染快55%, 更新渲染快133%内存减少54%......使 ...

  9. 李洪强iOS经典面试题153- 补充

    李洪强iOS经典面试题153- 补充   补充 有空就来解决几个问题,已经懒癌晚期没救了... UML 统一建模语言(UML,UnifiedModelingLanguage)是面向对象软件的标准化建模 ...

最新文章

  1. 2018-08-12 长大
  2. EOS 共识机制 (5)超级节点投票
  3. IOS学习之数据库(6)--SQLite常用的函数
  4. 上海计算机和金融专业,姚明:我将去上海交大读书 选择计算机金融专业
  5. 使用Python把PowerPoint文件转换为配乐MP4视频
  6. 上传文件到阿里云OSS对象存储,查询访问地址,删除文件
  7. vmnet0 子网ip和子网掩码_IP地址知识介绍及子网划分与汇总
  8. Solana 交易执行机制
  9. java new对象_Java中new一个对象是一个怎样的过程?JVM中发生了什么?
  10. android代码设置drawable,Android:Textview 通过代码设置 Drawable
  11. 实验二:运算器数据通路
  12. java 继承抽象类_java基础之继承,抽象类
  13. 金蝶K3安装环境检测缺少microsoft vm for java组件解决办法
  14. 真骨传导耳机推荐:佩戴最舒适健康的蓝牙耳机
  15. java 排名算法_排行榜的算法
  16. 计算机网络与多媒体技术内容,计算机网络多媒体技术应用
  17. 上海滩第一代炒股大户沉浮录
  18. 将svg图片转换icon
  19. Scaling Instruction-Finetuned Language Models翻译
  20. python中dumps是什么意思_python中的dumps和loads区别

热门文章

  1. 手把手教你做产品经理1.0
  2. 服务器云平台 系统,服务器云平台 系统
  3. 【2017年第1期】手机基站定位数据可视分析
  4. vscode python print 输出窗口中文乱码
  5. Jenkins(Pipeline)
  6. linux下重新启动oracle
  7. OC中语法糖,最新语法总结
  8. cmake编译Debug和Release
  9. CSS3弹性盒模型布局模块介绍
  10. 关于Acegi的详细信息(配置)