js每日一题(7)

js每日一题

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

**NaN属性表示“不是数字”的值。这个特殊值是由于一个操作数是非数字的(例如“ABC”/4)或者因为操作的结果是非数字而无法执行的。虽然这看起来很简单,但NaN有一些令人惊讶的特征,如果人们没有意识到这些特征,就会导致bug。一方面NaN的意思是“不是数字”但它的类型是,数字:console.log(typeof NaN === “number”);//llogs “true” 此外,NaN相比任何事情——甚至本身!一是false;
console.log(typeof NaN === NaN);//logs “false”
测试数字是否等于NaN的半可靠方法是使用内置函数isNaN(),但即使使用isNaN()也不是一个好的解决方案。
一个更好的解决方案要么使用value !== 值,如果该值等于NaN,那么只会生成true,另外,ES6提供了一个新的Number.isNaN()函数,它们旧的全局isNaN()函数不同,也更加可靠。
**
每天进步一点点!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈毓辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值