JS 的类型(null 和 undefined 的区别)

本文详细介绍了JavaScript中的typeof操作符用于检测变量的数据类型,如string、number、boolean等,并探讨了null和undefined的区别。null表示没有对象,而undefined表示值未定义。两者在转换为number类型时,null变为0,undefined则转为NaN。此外,还讨论了它们在函数参数、对象原型链和缺失值场景中的应用。
摘要由CSDN通过智能技术生成

可以使用 typeof 操作符来检测变量的数据类型。

typeof "John"                // 返回 string
typeof 3.14                  // 返回 number
typeof false                 // 返回 boolean
typeof [1,2,3,4]             // 返回 object
typeof {name:'John', age:34} // 返回 object

null 和 undefined 的区别

null:在 JavaScript 中 null 表示 “什么都没有”。null是一个,只有一个值的特殊类型。表示一个空对象引用。

undefined:在 JavaScript 中, undefined 是一个没有设置值的变量。typeof 一个没有值的变量会返回 undefined。

null 和 undefined 都可以用来清空对象。

var person = null;           // 值为 null(空), 但类型为对象
var person = undefined;     // 值为 undefined, 类型为 undefined

null 和 undefined 的值相等,但类型不等:

typeof undefined             // undefined
typeof null                  // object
null === undefined           // false
null == undefined            // true

null:表示没有对象,即该处不应该有值

  1. 作为函数的参数,表示该函数的参数不是对象

  2. 作为对象原型链的终点

undefined:表示缺少值,即此处应该有值,但没有定义

  1. 定义了形参,没有传实参,显示undefined

  2. 对象属性名不存在时,显示undefined

  3. 函数没有写返回值,即没有写return,拿到的是undefined

  4. 写了return,但没有赋值,拿到的是undefined

null和undefined如果转换成number数据类型的话

null:默认转成 0

undefined:默认转成 NaN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值