null 和undefined的区别[面试题]

相似:null和undefined区别不大 都表示“无,空”,对应的布尔值都是false 且运算结果相同

console.log(undefined == null) //true

面试题: 下面结果为真的表达式是:()

A.null instanceof Object

B.null === undefined

C.null == undefined

D.NaN == NaN

答案:c 

区别

null表示“无”的对象类型值,转为数字类型为0

undefined 表示‘无’的基本类型值 转换为数字类型是NaN

null 指空对象 但他是被定义过的 即此处不应该有值

undefined 是未被定义过的或不存在的。 就是此处应该有个值但未被定义

使用typeoof 运算符null返回object 而undefined返回的是undefined

null是一个关键字 undefined只是一个普通标识符,是一个全局属性(window对象的一个属性)

用法:

null:

  • 原型链的末端返回null
  • 访问一个不存在的dom节点时
  • 预期得到一个对象时获取不到对象返回null

undefined:

  • 变量只声明不赋值
  • 函数没有定义返回值
  • 访问对象中没有的属性
  • 形参的默认值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值