js中! 与 !!

时光总嘲笑我的痴心妄想 提交于 2020-01-09 14:11:51

!是逻辑取反,非的意思,可以与任何变量进行逻辑与将其转化为布尔值

console.log(!true)//false

console.log(!undefined)//true

console.log(!1)//false

!!常常用来做类型判断,在第一步!(变量)之后再做逻辑取反运算,在js中新手常常会写这样臃肿的代码:
判断变量a为非空,未定义或者非空串才能执行方法体的内容

var a;
if(a!=null&&typeof(a)!=undefined&&a!=''){
    //a有内容才执行的代码  
}

实际上我们只需要写一个判断表达:

if(!!a){
    //a有内容才执行的代码...  
}

省去了多次判断null、undefined和空字符串的冗余代码。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!