日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

JavaScript学习总结(二)——逻辑Not运算符详解

發(fā)布時間:2025/4/16 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript学习总结(二)——逻辑Not运算符详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  在JavaScript 中,邏輯NOT運(yùn)算符與C和Java中的邏輯 NOT 運(yùn)算符相同,都由感嘆號(!)表示。與邏輯 OR 和邏輯 AND 運(yùn)算符不同的是,邏輯 NOT 運(yùn)算符返回的一定是 Boolean 值。

邏輯 NOT 運(yùn)算符的行為如下:

  • 如果運(yùn)算數(shù)是對象,返回 false
  • 如果運(yùn)算數(shù)是數(shù)字 0,返回 true
  • 如果運(yùn)算數(shù)是 0 以外的任何數(shù)字,返回 false
  • 如果運(yùn)算數(shù)是 null,返回 true
  • 如果運(yùn)算數(shù)是 NaN,返回 true
  • 如果運(yùn)算數(shù)是 undefined,發(fā)生錯誤

測試腳本如下:

1 <script type="text/javascript"> 2 var bFalse = false;//運(yùn)算數(shù)是bool類型的數(shù) 3 var sRed = "red";//運(yùn)算數(shù)是字符串 4 var iZero = 0;//運(yùn)算數(shù)是0 5 var iThreeFourFive = 345;//運(yùn)算數(shù)是 0 以外的任何數(shù)字 6 var oObject = new Object();//對象 7 var oNull=null;//運(yùn)算數(shù)是null 8 var oUndefined;//運(yùn)算數(shù)是undifined 9 var oNaN=parseInt("abc");//使用parseInt方法把嘗試字符串a(chǎn)bc轉(zhuǎn)換成整數(shù),因?yàn)閍bc不是數(shù)字,因此是轉(zhuǎn)不了的,所以返回的結(jié)果就是NaN 10 11 /* 12 writeln() 方法與 write() 方法幾乎一樣,差別僅在于是前者將在所提供的任何字符串后添加一個換行符。在HTML中,這通常只會在后面產(chǎn)生一個空格; 13 不過如果使用了 <PRE> 和 <XMP> 標(biāo)識,這個換行符會被解釋,且在瀏覽器中顯示。 14 */ 15 document.writeln("<XMP>"); 16 document.writeln("oNaN=parseInt(\"abc\")返回的結(jié)果是"+oNaN); 17 document.writeln("bool類型的數(shù)false與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!bFalse)); 18 document.writeln("字符串sRed與!運(yùn)算符運(yùn)算之后的結(jié)果是: " + (!sRed)); 19 document.writeln("數(shù)字0與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!iZero));//如果運(yùn)算數(shù)是數(shù)字 0,返回 true 20 document.writeln("數(shù)字345與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!iThreeFourFive));//如果運(yùn)算數(shù)是 0 以外的任何數(shù)字,返回 false 21 document.writeln("對象oObject與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!oObject));//如果運(yùn)算數(shù)是對象,返回 false 22 document.writeln("NaN與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!oNaN));//如果運(yùn)算數(shù)是NaN,返回 true 23 document.writeln("null與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!oNull));//如果運(yùn)算數(shù)是 null,返回 true 24 document.writeln("undifined與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!oUndefined)); 25 //document.writeln("未定義的字符串sBule與!運(yùn)算符運(yùn)算之后的結(jié)果是:" + (!sBule));//sBule前面沒有定義,也就是sBule運(yùn)算數(shù)是 undefined,因此這里發(fā)生錯誤 26 document.writeln("</XMP>"); 27 </script>

運(yùn)行結(jié)果:

  

  判斷JavaScript變量的Boolean 值時,也可以使用邏輯NOT運(yùn)算符。這樣做需要在一行代碼中使用兩個 NOT 運(yùn)算符。無論運(yùn)算數(shù)是什么類型,第一個NOT運(yùn)算符返回 Boolean值,第二個NOT將對該Boolean值取反,從而給出變量真正的Boolean值。使用not運(yùn)算符判斷JavaScript變量的Boolean值是一個非常有用的技巧,只要知道了變量的boolean值,那么當(dāng)使用變量進(jìn)行&&或者||運(yùn)算時,就可以很快知道運(yùn)算的結(jié)果了。

測試腳本如下:

1 <script type="text/javascript"> 2 var bFalse = false;//運(yùn)算數(shù)是bool類型的數(shù) 3 var sRed = "red";//運(yùn)算數(shù)是字符串 4 var iZero = 0;//運(yùn)算數(shù)是0 5 var iThreeFourFive = 345;//運(yùn)算數(shù)是 0 以外的任何數(shù)字 6 var oObject = new Object();//對象 7 var oNull=null;//運(yùn)算數(shù)是null 8 var oUndefined;//運(yùn)算數(shù)是undifined 9 var oNaN=parseInt("abc");//使用parseInt方法把嘗試字符串a(chǎn)bc轉(zhuǎn)換成整數(shù),因?yàn)閍bc不是數(shù)字,因此是轉(zhuǎn)不了的,所以返回的結(jié)果就是NaN 10 /* 11 判斷JavaScript 變量的 Boolean 值時,也可以使用邏輯 NOT 運(yùn)算符。這樣做需要在一行代碼中使用兩個 NOT 運(yùn)算符。 12 無論運(yùn)算數(shù)是什么類型,第一個 NOT 運(yùn)算符返回 Boolean 值。第二個 NOT 將對該 Boolean 值取反,從而給出變量真正的 Boolean 值。 13 */ 14 document.write("<PRE>"); 15 document.writeln("布爾數(shù)false 的邏輯值是 " + (!!bFalse)); 16 document.writeln("字符串sRed 的邏輯值是 " + (!!sRed)); 17 document.writeln("數(shù)字0 的邏輯值是 " + (!!iZero)); 18 document.writeln("數(shù)字345 的邏輯值是 " + (!!iThreeFourFive)); 19 document.writeln("對象Object 的邏輯值是 " + (!!oObject)); 20 document.writeln("NaN的邏輯值是 :" + (!!oNaN)); 21 document.writeln("null 的邏輯值是 " + (!!oNull)); 22 document.writeln("undefined 的邏輯值是 " + (!!oUndefined)); 23 document.write("</PRE>"); 24 </script>

運(yùn)行結(jié)果:

  

轉(zhuǎn)載于:https://www.cnblogs.com/ronghua/p/10178950.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的JavaScript学习总结(二)——逻辑Not运算符详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。