浅谈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 获取url参数和script标签中获取url参数函数代码
Jan 22 Javascript
JavaScript 用Node.js写Shell脚本[译]
Sep 20 Javascript
js中AppendChild与insertBefore的用法详细解析
Dec 16 Javascript
javascript中with()方法的语法格式及使用
Aug 04 Javascript
js实现简单的联动菜单效果
Aug 19 Javascript
浅谈JavaScript 浏览器对象
Jun 03 Javascript
javascript 中关于array的常用方法详解
May 05 Javascript
javascript简单链式调用案例分析
May 10 Javascript
详解React Native网络请求fetch简单封装
Aug 10 Javascript
对Angular中单向数据流的深入理解
Mar 31 Javascript
微信小程序实现长按删除图片的示例
May 18 Javascript
深入koa-bodyparser原理解析
Jan 16 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
DC《神奇女侠2》因疫情推迟上映 温子仁新恐怖片《恶性》撤档
2020/04/09 欧美动漫
php实现图片缩放功能类
2013/12/18 PHP
php及codeigniter使用session-cookie的方法(详解)
2017/04/06 PHP
Extjs学习笔记之四 工具栏和菜单
2010/01/07 Javascript
JavaScript Array Flatten 与递归使用介绍
2011/10/30 Javascript
JavaScript(js)设置默认输入焦点(focus)
2012/12/28 Javascript
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
JavaScript中的字符串操作详解
2013/11/12 Javascript
JQuery each打印JS对象的方法
2013/11/13 Javascript
node.js中的fs.linkSync方法使用说明
2014/12/15 Javascript
jQuery实现的简单提示信息插件
2015/12/08 Javascript
浅谈js里面的InttoStr和StrtoInt
2016/06/14 Javascript
Kindeditor单独调用单图上传增加预览功能的实例
2017/07/31 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
vue.js中使用echarts实现数据动态刷新功能
2019/04/16 Javascript
vue实现短信验证码登录功能(流程详解)
2019/12/10 Javascript
浅谈vue-props的default写不写有什么区别
2020/08/09 Javascript
python翻译软件实现代码(使用google api完成)
2013/11/26 Python
Python中如何获取类属性的列表
2016/12/26 Python
django 修改server端口号的方法
2018/05/14 Python
Pandas读取并修改excel的示例代码
2019/02/17 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
2019/11/27 Python
python时间日期操作方法实例小结
2020/02/06 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
经验丰富程序员才知道的8种高级Python技巧
2020/07/27 Python
Python 如何调试程序崩溃错误
2020/08/03 Python
Python 实现键盘鼠标按键模拟
2020/11/18 Python
Python爬虫简单运用爬取代理IP的实现
2020/12/01 Python
美国二手复古奢侈品包包购物网站:LXRandCo
2019/06/18 全球购物
入党积极分子思想汇报范文
2014/01/05 职场文书
文化宣传方案
2014/03/13 职场文书
2014年国庆晚会主持词
2014/09/19 职场文书
群众路线教育实践活动对照检查材料思想汇报(副处级领导)
2014/10/04 职场文书
教师群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
2014年远程教育工作总结
2014/12/09 职场文书
解决Laravel使用验证时跳转到首页的问题
2021/11/17 PHP