Javascript两个感叹号的用法(!!)

Posted silentmuh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript两个感叹号的用法(!!)相关的知识,希望对你有一定的参考价值。

技术分享
var foo;  
alert(!foo);//undefind情况下或者null,一个感叹号返回的是true;  
alert(!goo);//undefind情况下,一个感叹号返回的也是true;  但是这里会报undefind的错误
var o={flag:true};  
var test=!!o.flag;//等效于var test=o.flag||false;  
alert(test);  //返回true
var test2=!!o.flag1;//当里面没有对象时
alert(test2);//返回false
var test3=!!b.flag;//当连b这个对象都没有时
alert(test3);//返回false
技术分享

所以可以发现,!!两个感叹号多用于判断对象的存在。

 

1、JS双竖线运算符:是或比较.如null||‘1‘,返回‘1‘;‘2‘||‘1‘,返回‘2‘.即或运算符中,第一个为真,后面的就不用计算了.所以得‘2‘。

2、js 中 使用双竖线运算符"||",返回第一个有效值
 

var objOne = undefined || 1 || null || new Date(); 
var objTwo = new Date(); 
var objThree = objOne || objTwo; 
alert(objThree.toString()); //out put "1"




以上是关于Javascript两个感叹号的用法(!!)的主要内容,如果未能解决你的问题,请参考以下文章

js中两个感叹号的原理与用法分析

C语言 if用法

@SuppressWarnings注解的用法

是啥 !! JavaScript 中的(不是否)运算符?

是啥 !! JavaScript 中的(不是否)运算符?

是啥 !! JavaScript 中的(不是否)运算符?