js中null 和undefined 和空串的区别

Undefined null 和空串的区别

var str1;//输出undefined 类型(typeof)是undefined
var str2 = "";//输出空串 类型是string
var str3 = {};//输出 [Object object] 类型是object
var str4 = null;//输出null 类型是object

Str1只是开辟了一块内存单元,并没有对它进行存值,这个时候访问该变量(内存单元),获取的当然是个undefined,假如说你定义了一个函数,该函数并没有返回值,那么输出该函数的结果也是一个undefined,和上面是同样的道理,因为该返回值没有被定义

 

Str2定义了一个变量,里面存了一个空串,访问时获取的也是一个空串

 

Str3是定义了一个对象,不管这个对象内部是否有东西,他输出的都是一个object

 

Str4就是一个null,它的类型呢是一个object,它经常用在判断上,如果变量没有定义或者说这个对象(或者元素)不存在,返回的都是一个null,

 

注意:如果判断获取的input标签是否有内容,应该是用””(空串来进行判断,而不是用null),因为获取input中的值本身就是一个字符串,这个input是存在的,并不是为空(null),所以说,判断input元素的值是否为空应该用 inputValue == “”来进行判断,而不是null

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值