麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

詳解JavaScript邏輯And運算符

2024-05-06 16:25:49
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了JavaScript邏輯And運算符,在JavaScript中,邏輯 AND 運算符用雙和號(&&)表示
 

在JavaScript中,邏輯 AND 運算符用雙和號(&&)表示

var bTrue = true;var bFalse = false;var bResult = bTrue && bFalse;

  下面的真值表描述了邏輯AND運算符的行為:

詳解JavaScript邏輯And運算符

需要說明的是:邏輯AND運算的運算數可以是任何類型的,不止是Boolean值,如果某個運算數不是原始的Boolean型值,邏輯AND運算并不一定返回Boolean值

邏輯AND運算符的運算行為如下:

  • 如果一個運算數是對象,另一個是 Boolean 值,返回該對象。
  • 如果兩個運算數都是對象,返回第二個對象。
  • 如果某個運算數是 null,返回 null。
  • 如果某個運算數是 NaN,返回 NaN。
  • 如果某個運算數是 undefined,發生錯誤。
  • 如果兩個運算數都是boolean類型,則返回boolean值

  與Java中的邏輯AND運算相似,JavaScript 中的邏輯AND運算也是簡便運算,即如果第一個運算數決定了結果,就不再計算第二個運算數。對于邏輯AND運算來說,如果第一個運算數是false,那么無論第二個運算數的值是什么,結果都不可能等于true。
  考慮下面的例子:

var bTrue = true;var bResult = (bTrue && bUnknown); //發生錯誤alert(bResult); //這一行不會執行

代碼運行結果:

詳解JavaScript邏輯And運算符

  這段代碼在進行邏輯 AND 運算時將引發錯誤,因為變量 bUnknown 是未定義的。變量 bTrue 的值為 true,因為邏輯 AND 運算將繼續計算變量 bUnknown。這樣做就會引發錯誤,因為 bUnknown 的值是 undefined,不能用于邏輯 AND 運算。
    如果修改這個例子,把第一個數設為 false,那么就不會發生錯誤:

var bTrue = false;var bResult = (bTrue && bUnknown); //不會發生錯誤alert("bTrue && bUnknown的結果是:"+(bResult));//輸出 "false"

  在這段代碼中,腳本將輸出邏輯AND運算返回的值,即字符串"false"。即使變量 bUnknown 的值為 undefined,它也不會被計算,因為第一個運算數的值是 false。

運行結果:

詳解JavaScript邏輯And運算符

驗證JavaScript邏輯And運算符的運算行為

測試代碼:

<script type="text/javascript">  document.write("驗證JavaScript邏輯And運算符的運算行為:");  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  var bTrue = true;  var bFalse = false;  var bResult = bTrue && bFalse;  /*1.如果兩個運算數都是boolean類型,則返回boolean值*/  document.write("1.如果兩個運算數都是boolean類型,則返回boolean值");  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  document.write("bTrue = true,bFalse = false,bTrue && bFalse的結果是:"+(bResult));//結果為false  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  var obj = new Object();  /*2.如果一個運算數是對象,另一個是 Boolean 值,返回該對象*/  document.write("2.如果一個運算數是對象,另一個是 Boolean 值,返回該對象");  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  document.write("obj是一個對象,true&&obj的結果是:"+(true&&obj));  document.write("<br/>");  document.write("obj==true&&obj的結果是:"+(obj==(true&&obj)));  document.write("<br/>");  document.write("false&&obj的結果是:"+(false&&obj));  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  /*3.如果兩個運算數都是對象,返回第二個對象。*/  var obj1 = new Object();  var obj2 = new Object();  document.write("3.如果兩個運算數都是對象,返回第二個對象。");  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  document.write("obj1是一個對象,obj2是一個對象,obj1==(obj1&&obj2)的結果是:"+(obj1==(obj1&&obj2)));//結果為false  document.write("<br/>");  document.write("obj1是一個對象,obj2是一個對象,obj2==(obj1&&obj2)的結果是:"+(obj2==(obj1&&obj2)));//結果為true  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  /*4.如果某個運算數是 null,返回null。*/  var a=null;  var b=true;  document.write("4.如果某個運算數是 null,返回null。");  document.write("<br/>");  document.write("a=null,b=true,a&&b的結果是:"+(a&&b));  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  /*5.如果某個運算數是NaN,返回NaN*/   var c = NaN;   var d = "str";  document.write("5.如果某個運算數是NaN,返回NaN");  document.write("<br/>");  document.write("c=NaN,d=str,c&&d的結果是:"+(c&&d));  document.write("<br/>");  document.write("-----------------------------------------------------------------------------");  document.write("<br/>");  /*  6.JavaScript中的邏輯 AND 運算是簡便運算,即如果第一個運算數決定了結果,就不再計算第二個運算數。  對于邏輯 AND 運算來說,如果第一個運算數是 false,那么無論第二個運算數的值是什么,結果都不可能等于 true。  */  var bFalse = false;  var bResult = (bFalse && bUnknown);  document.write("6.JavaScript中的邏輯 AND 運算是簡便運算,即如果第一個運算數決定了結果,就不再計算第二個運算數");  document.write("<br/>");  document.write("對于邏輯 AND 運算來說,如果第一個運算數是 false,那么無論第二個運算數的值是什么,結果都不可能等于 true。");  document.write("<br/>");  document.write("bFalse=false,bUnknown是一個未定義的變量,bFalse && bUnknown的結果是:"+(bResult)); //輸出 "false"  var bTrue = true;  var bResult = (bTrue && bUnknown);  //發生錯誤  alert(bResult);      //這一行不會執行 </script>

詳解JavaScript邏輯And運算符

以上就是關于JavaScript邏輯And運算符的全部介紹,希望能夠幫助到大家更好的學習js的邏輯運算符。



注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 成人在线视频免费 | 国产精品自拍片 | 国产91九色 | 国产超碰人人做人人爱 | 国产日韩在线观看一区 | 欧美成人自拍 | 成人午夜激情视频 | 欧洲精品久久 | 婷婷久久青草热一区二区 | 国产成人精品网站 | 激情宗合网 | 美女黄污视频 | 蜜桃网站在线观看 | xxxeexxx性国产 | 国产在线精品区 | 欧美一级黄色网 | 免费永久看羞羞片网站入口 | 色播av在线 | 国产成人av免费看 | 亚洲精品7777 | 精品亚洲一区二区三区 | 欧美日本91精品久久久久 | 欧美城网站地址 | 午夜视频福利 | 337p日本欧洲亚洲大胆精蜜臀 | 欧美一级在线看 | 经典三级在线视频 | 亚洲视频成人 | 桥本有菜免费av一区二区三区 | 欧美日韩a∨毛片一区 | tube69xxxxxhd| 午夜视频色 | 在线中文字幕观看 | av观看国产 | 他也色在线视频 | 亚洲第一激情网 | 国产精品一区在线免费观看 | 18被视频免费观看视频 | 亚洲精品无码不卡在线播放he | 男女牲高爱潮免费视频男女 | 午夜精品成人一区二区 |