JavaScript 中的 undefined、null 和 NaN

一、Undefined

Undefined 是 JavaScript 的基本数据类型之一,这个类型只有一个值,就是 undefined。

已经声明但未初始化的变量,其值就为undefined。

(未声明的变量和已声明未初始化的变量,其 typeof 都返回 undefined)


二、Null

Null 是第二个只有一个值 null 的数据类型,从逻辑角度看,null 值表示一个空对象指针,即 typeof(null) 返回"object"。

如果定义的变量在将来用于保存数据,在声明时,应该初始化为null。这样一来,通过检查null 值就知道相应的变量是否已经保存了一个对象的引用。

(undefined 值派生自null 值。)

alert(undefined == null)         //true

三、NaN

NaN,即非数值,是一个特殊的数值,表示一个本该返回数值的操作没有返回数值的情况。例如:任何数值 / 0。


1、NaN 有两个特点:

(1)任何涉及 NaN 的操作都会返回NaN。

(2)NaN 和任何值都不相等,包括NaN本身。


2、isNaN( ):

接受一个任意类型的参数,判断该参数是否为 NaN。

isNaN( ) 的参数如果不是数值,会先尝试转换为数值,不能转换则返回true。

alert(isNaN(NaN))               //true
alert(isNaN(10))                //false
alert(isNaN("10"))              //false
alert(isNaN("blue"))            //true(不可转换)
alert(isNaN(true))              //false(可以被转换为数值1)
(在基于对象调用 isNaN() 函数时,会首先调用对象的 valueOf() 方法,然后确定该方法返回的值可以转换为数值。如果不能,再基于这个返回值调用 toString() 方法,再测试返回值)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值