基础类型真假表
TRUE | FALSE | |
---|---|---|
boolean | true | false |
number | others | 0 NaN |
string | others | ‘’ “” |
undefined | undefined | |
null | null | |
object | others, 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