JavaScript 中的 NaN 是什么?

JavaScript中的NaN代表非数字值,常在数学运算失败或转化非数字字符串时出现。例如,parseInt("hello")、0/0和Math.sqrt(-1)都会产生NaN。NaN的特点是任何与NaN的运算结果仍为NaN,并且NaN不等于任何值,包括它自己。检测NaN应使用isNaN()函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 JavaScript 中,NaN 是一个特殊的数值,表示非数字(Not-a-Number)。它是一个全局属性,通常作为一个无效或未定义的数值结果出现。

当进行数学运算失败或将非数字字符串转换为数字时,通常会得到 NaN。例如,以下情况会产生 NaN:

  • 将非数字字符串转换为数字:parseInt(“hello”) 或 Number(“abc”)
  • 0 除以 0 或任何产生无穷大的操作:0/0 或 Infinity - Infinity
  • 对非数字值进行数学运算:NaN + 5 或 Math.sqrt(-1)

NaN 具有一些特殊的行为:

  • 任何与 NaN 进行数学运算的结果仍然是 NaN。
  • NaN 与任何值(包括自身)进行比较,结果都是 false。
  • 使用 isNaN() 函数可以检查一个值是否为 NaN。

以下是一些示例:

console.log(NaN);                 // 输出: NaN
console.log(typeof NaN);          // 输出: "number"

console.log(NaN + 5);             // 输出: NaN
console.log(NaN - NaN);           // 输出: NaN
console.log(NaN === NaN);         // 输出: false

console.log(isNaN(NaN));          // 输出: true
console.log(isNaN("hello"))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值