2023-08-31 js 判断内容有值才运行 ==》if (!!str) {//内容有值则运行}

iuniko / 2023-08-31 / 原文

一般新手判断一个值是否不为null且不为undefined且不为空字符串都会这样写
str != '' && str != undefined && str != null

或者

str !== '' && typeof(str) !== undefined && str !== null

其实有一种简洁高效的写法就是2个!组成,即!!str。如:

if (!!str) {    
  // 内容有值才执行  
}

!!使用来做类型判断的,即str不为null且不为undefined且不为空字符串才会为true,否者为false。

如果你的值有可能是空数组或者空字符串,那就不要用!!来判断了,用!来判断或者判断其长度即可,即!str或者str.length > 0。