浅谈JavaScript中的NaN

浅谈JavaScript中的NaN

NaN概念以及简单案例

追寻的纯粹该拥有自己的本质。-JC.F

什么是NaN?

NaN:NaN(Not a Number),它表示不是数字,但是仍是数值类型。

  • NaN不是数据类型,只是基本类型number里的特殊值
  • NaN不等于任何值,包括自己本身
  • NaN转换为布尔值为false

NaN转换为数字(Number), 字符串(String), 布尔值(Boolean)所对应的结果:

(1) NaN转换为数字:
原始值转换为数字(Number)
NaNNaN

console.log(Number(NaN));

(2) NaN转换为字符串:
原始值转换为字符串(String)
NaN“NaN”

console.log(String(NaN));

(3) NaN转换为布尔值:
原始值转换为布尔值(Boolean)
NaNfalse

console.log(Boolean(NaN));

NaN==NaN吗?

通过在编辑器验证这个问题,控制台输出得到的结果是false。

console.log(NaN==NaN);

运行结果

简单转换案例:

parseInt(数值字符串):返回将字符串转化为数值的结果,返回的结果为整型(没有小数点的数字)。
  • 如果第一个字符不是数字字符或者符号,parseInt()就会返回NaN;用parseInt()转换空字符串会返回NaN,而Number()对空字符返回结果为0。
  • parseInt()方法如果接收的字符串含有非数字的字符,parseInt()方法会从字符串的首个字符开始寻找,一直找到非数字字符为止,并把把前面的数字字符转换成数字。
   console.log(parseInt(6));                     //6
   console.log(parseInt(""));                   //NaN
   console.log(parseInt(" "));                 //NaN
   console.log(parseInt("6"));                //6
   console.log(parseInt("u1"));              //NaN
   console.log(parseInt("1u"));             //1
   console.log(parseInt("070"));           //70
   console.log(parseInt("70"));           //70

小知识点:

  1. 字符串加数字:其结果就是字符串。
  2. 除了加法外的运算符:其结果转化为数字。
   console.log("10"+11); 			//1011
   console.log(11-"10"); 			//1
   console.log(11-"abc"); 		   //NaN
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值