浅谈JavaScript中的“!!”作用


Posted in Javascript onAugust 03, 2020
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript">
 
		alert(!!undefined)//false
		alert(!!null)//false
		alert(!!0)//false
		alert(!!"")//fase
		
	</script>
</head>
<body>
 
</body>
</html>

js代码中有时会用到“!”,这个我们知道是取反,对于布尔类型会将其值true和false互换,那对于非布尔类型呢?

对于非布尔类型,js会将值先转换成布尔类型,而后取反。

其他类型转布尔型的规则:

字符串类型值,会将空值("")转换成false,其余转换成true。

数字类型,会将0转换成false,其余为true。

null、undefined会转换成false。

因此,对于null、undefined、0、“”都会被转为flase。

说道这里,应该就理解了“!!”的含义了,一个!是将对象转为布尔型并取反,两个!是将取反后的布尔值再取反,相当于直接将非布尔类型值转为布尔类型值。

到此这篇关于浅谈JavaScript中的“!!”作用的文章就介绍到这了,更多相关JavaScript中的“!!”作用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript数组操作方法小结和3个属性详细介绍
Jul 05 Javascript
jQuery构造函数init参数分析
May 13 Javascript
Js制作点击输入框时默认文字消失的效果
Sep 05 Javascript
jquery动态增加删减表格行特效
Nov 20 Javascript
js命名空间写法示例
Dec 18 Javascript
AngularJs  E2E Testing 详解
Sep 02 Javascript
Ionic3 UI组件之autocomplete详解
Jun 08 Javascript
vue 组件 全局注册和局部注册的实现
Feb 28 Javascript
浅谈React之状态(State)
Sep 19 Javascript
解决layui checkbox 提交多个值的问题
Sep 02 Javascript
如何实现vue的tree组件
Dec 03 Vue.js
JS实现刷新网页后之前浏览位置保持不变示例详解
Aug 14 Javascript
基于脚手架创建Vue项目实现步骤详解
Aug 03 #Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
Aug 03 #Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
Aug 03 #Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
Aug 03 #Javascript
Vue 实现对quill-editor组件中的工具栏添加title
Aug 03 #Javascript
简单了解three.js 着色器材质
Aug 03 #Javascript
Element InputNumber 计数器的实现示例
Aug 03 #Javascript
You might like
PHP的5个安全措施小结
2012/07/17 PHP
PHP两种快速排序算法实例
2015/02/15 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
jQuery打印指定区域Html页面并自动分页
2014/07/04 Javascript
jquery对象和javascript对象即DOM对象相互转换
2014/08/07 Javascript
javascript面向对象之this关键词用法分析
2015/01/13 Javascript
DOM基础教程之模型中的模型节点
2015/01/19 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
将json转换成struts参数的方法
2016/11/08 Javascript
jQuery.Form上传文件操作
2017/02/05 Javascript
纯js实现的积木(div层)拖动功能示例
2017/07/19 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
Vue keepAlive 数据缓存工具实现返回上一个页面浏览的位置
2019/05/10 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
2020/12/14 NodeJs
Vue-router编程式导航的两种实现代码
2021/03/04 Vue.js
python文件读写操作与linux shell变量命令交互执行的方法
2015/01/14 Python
Python实现保证只能运行一个脚本实例
2015/06/24 Python
Python命令行解析模块详解
2018/02/01 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python 处理微信对账单数据的实例代码
2019/07/19 Python
Selenium使用Chrome模拟手机浏览器方法解析
2020/04/10 Python
Python Pivot table透视表使用方法解析
2020/09/11 Python
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
Kusmi茶美国官网:优质散叶茶和茶包
2019/10/13 全球购物
什么是规则表达式
2012/05/03 面试题
大学四年规划书范文
2013/12/27 职场文书
《画》教学反思
2014/04/14 职场文书
银行爱岗敬业演讲稿
2014/05/05 职场文书
公司副总经理任命书
2014/06/05 职场文书
师德师风自我评价范文
2014/09/11 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2014年度培训工作总结
2014/11/27 职场文书
python使用pygame创建精灵Sprite
2021/04/06 Python