js逻辑非同时两次使用 !!null
Posted 奔跑的铃铛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js逻辑非同时两次使用 !!null相关的知识,希望对你有一定的参考价值。
今天遇到了“!!null”的写法,百度没有找到直接的解释,翻书在《javascript高级设计》P44找到了相应的解释:
同时使用两个逻辑非操作符,实际上就会模拟Boolean()转型函数的行为。其中,第一个逻辑非操作符会基于无论什么操作数返回一个布尔值,而第二个逻辑非操作则对该布尔值求反,于是就得到了这个值真正对应的布尔值。当然最终结果与对这个值使用Boolean()函数效果相同。
所以其实个人认为,!!写法就是Boolean()的一种简便写法。
可以运行下面示例来更形象的了解:
alert(!!"blue");
alert(Boolean("blue"));
alert(!!null);
alert(Boolean(null));
如有错误,请您指出~
以上是关于js逻辑非同时两次使用 !!null的主要内容,如果未能解决你的问题,请参考以下文章