js中!和!!的区别与用法
js中!的用法是比较灵活的,它除了做逻辑运算常常会用!做类型判断,可以用!与上对象来求得一个布尔值,
1、!可将变量转换成boolean类型,null、undefined和空字符串取反都为false,其余都为true。
!null=true !undefined=true !''=true !100=false !'abc'=false
2、!!常常用来做类型判断,在第一步!(变量)之后再做逻辑取反运算,在js中新手常常会写这样臃肿的代码:
判断变量a为非空,未定义或者非空串才能执行方法体的内容
var a; if(a!=null&&typeof(a)!=undefined&&a!=''){ //a有内容才执行的代码 }
实际上我们只需要写一个判断表达:
if(!!a){ //a有内容才执行的代码... }
就能和上面达到同样的效果。a是有实际含义的变量才执行方法,否则变量null,undefined和''空串都不会执行以下代码。
可以总结出来,“!”是逻辑与运算,并且可以与任何变量进行逻辑与将其转化为布尔值,“!!”则是逻辑与的取反运算,尤其后者在判断类型时代码简洁高效,省去了多次判断null、undefined和空字符串的冗余代码。
原文链接:https://www.cnblogs.com/tison/p/8111712.html
(资源库 www.zyku.net)
上一篇:js实现文章目录索引导航(table of content)
栏 目:JavaScript
下一篇:JS - 获取文件后缀,判断文件类型(比如是否为图片格式)
本文标题:js中!和!!的区别与用法
本文地址:https://www.zyku.net/js/1904.html
您可能感兴趣的文章
- 06-26highlightjs网页代码高亮插件调用方法
- 05-10JS - 获取文件后缀,判断文件类型(比如是否为图片格式)
- 05-10js实现文章目录索引导航(table of content)
- 05-10JS实现单张或多张图片持续无缝滚动的示例代码
- 05-10js根据后缀判断文件文件类型的代码
- 05-10JS端基于download.js实现图片、视频时直接下载而不是
- 04-02CentOS安装Nodejs教程
- 02-11JS操作剪贴板代码详解
- 01-04帝国CMS页面JS调用登录状态loginjs.php中获取会员头像
- 11-30CentOS下安装并配置nodejs环境教程
- 10-18华为nova9pro怎么在日历查看节假日休
- 12-17vivo手机如何恢复已删除照片
- 11-30抖音悬浮窗权限怎样开启
- 09-27vivo手机设置上滑控制中心教程分享
- 02-20Ubuntu常用命令大全
- 02-22DedeCMS列表页给推荐的文章添加推荐特
- 09-19小米平板5pro怎么设置超级壁纸
- 10-09公考雷达如何进行职位匹配
- 06-13帝国CMS常用变量总结
- 08-12微信读书设置青少年模式技巧

最近更新
阅读排行
猜你喜欢
- 10-222021支付宝双11花呗金翻翻卡怎么玩
- 11-12支付宝商家收款码如何升级
- 09-28小米civi有NFC功能吗
- 06-28nginx windows安装、使用和配置开机启
- 09-08CentOS 7 上安装Docker教程
- 09-17微信如何查询自己有几个电话号
- 02-19利用yum安装Redis的方法详解
- 10-26OPPOA56怎么加密应用
- 11-29苹果12如何升级ios15系统
- 10-09iphone13promax添加交通卡教程介绍