JS 中的 False 与空值

基础类型真假表

TRUEFALSE
booleantruefalse
numberothers0 NaN
stringothers‘’ “”
undefinedundefined
nullnull
objectothers, includes {}null

以上是六大基本类型,值得注意的是,其中 null 类型,如果使用 typeof,返回值是 "object"

几个默认的假值在判断的时候就可以简写,或者写成 !!varName 转。


空数组与空对象

注意:如果是空数组或者空对象 [] {},无法直接判断,最简单的是转成字符串

JSON.stringify([]) === '[]'
JSON.stringify({}) === '{}'

或者使用各自的方法,比如

const arr = [];
const obj = {};

arr.length === 0;

Object.getOwnPropertyNames(obj).length === 0;
Object.keys(obj) === 0;

空串与空格字符串

如果直接判断空串 '' "" 可以直接 if(str),但是如果是空格/换行符需要用到正则表达式

const str = ' '

(!!str) === true;  // cannot use if

if (str.match(/^\s$/)) {
    // true if space & line-break
} else {
    // false
}

欢迎来我的博客做客
zhyib.gitee.io
zhyib.github.io

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值