JS基础学习

undefined和null的区别

1.基本概念

undefined : 是一个表示”缺少值”的原始值,就是应该在这之前应该定义,但是还并没有定义

null : null表示此处为空,就是表示没有东西此处什么都没有

undefined,null,NaN,0互相判断验证

var arr = [null , undefined, NaN, 0];
    var str = "" ;
    for (var i = 0; i < arr.length ; i++)
    {
        for (var j = i + 1; j < arr.length ; j++)
        {
            if (arr[i] == arr[j])
            {
                str +=( arr[i]  + " == " +  arr[j] ) + "\n" ;
            }
            else 
            {
                str += (arr[i]  + " != " +  arr[j] ) + "\n" ;
            }
        }
    }
    console.log(str)

结果:
null == undefined
null != NaN
null != 0
undefined != NaN
undefined != 0
NaN != 0

NaN表示的是一个”不是数字的数字”, 包括了所有不是数字的东西(并集)

null和undefined的隐式转换是相等的,但是===判断的话就是false了

2.判断值是否存在

这样判断一个值是否存在,就可以用

var a ;
console.log(a === undefined);
//true  
//这里不能用null因为null代表空值。                              

3.undefined典型用法是:

1. 变量被声明了,但没有赋值时,就等于undefined。
2. 调用函数时,应该提供的参数没有提供,该参数等于undefined。
3. 对象没有赋值的属性,该属性的值为undefined。
4. 函数没有返回值时,默认返回undefined。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值