js中!和!!的区别及用法
作者:
哈布福禄克 | 来源:发表于
2021-01-14 16:32 被阅读0次
一、!和!!对比
1、介绍
- js中 ! 的用法是比较灵活的,它做逻辑运算常常会用!做类型判,可将变量转换成boolean类型,null、undefined和空字符串取反都为true,其余都为false。
1.1实例:(取反)
!null=true
!undefined=true
!''=true
!100=false
!'abc'=false
2、介绍
- !!常常用来做类型判断,在第一步!(变量)之后再做逻辑取反运算,在js中新手常常会写这样臃肿的代码
2.1实例: (判断变量a为非空,未定义或者非空串)
var a;
if(a!=null&&typeof(a)!=undefined&&a!=''){
//a有内容才执行的代码
}
实际上我们只需要写一个判断表达:
if(!!a){
//a有内容才执行的代码...
}
二、总结
- “!”是逻辑与运算,并且可以与任何变量进行逻辑与将其转化为布尔值
- “!!”则是逻辑与的取反运算,尤其后者在判断类型时代码简洁高效,省去了多次判断null、undefined和空字符串的冗余代码。
本文标题:js中!和!!的区别及用法
本文链接:https://www.haomeiwen.com/subject/avmvaktx.html
网友评论