日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

我們將學(xué)習(xí) JavaScript 中非布爾值強(qiáng)制轉(zhuǎn)換為布爾值。對于初學(xué)者來說,強(qiáng)制轉(zhuǎn)換這個(gè)詞在 JavaScript 中是新的。那么,讓我們澄清一下什么是強(qiáng)制。

強(qiáng)制是將一種數(shù)據(jù)類型的變量轉(zhuǎn)換為另一種數(shù)據(jù)類型。眾所周知,JavaScript 不是一種類型嚴(yán)格的語言。因此,我們不需要定義變量的類型。有時(shí),JavaScript 會自動強(qiáng)制變量并在輸出中給出不可預(yù)測的結(jié)果。

JavaScript 中有兩種類型的強(qiáng)制轉(zhuǎn)換。一種是隱式強(qiáng)制,另一種是顯式強(qiáng)制。我們將在本教程中一一學(xué)習(xí)這兩種強(qiáng)制轉(zhuǎn)換。

顯式強(qiáng)制

當(dāng)使用布爾強(qiáng)制方法之一(例如 Boolean() 或 !!)將非布爾值顯式轉(zhuǎn)換為布爾值時(shí),就會發(fā)生顯式強(qiáng)制轉(zhuǎn)換。

我們將詳細(xì)討論這兩種方法:

使用雙重 NOT (!!) 運(yùn)算符進(jìn)行顯式強(qiáng)制轉(zhuǎn)換

當(dāng)我們在 JavaScript 中對任何值使用 not (!) 運(yùn)算符時(shí),它會將非布爾值轉(zhuǎn)換為布爾值。

一個(gè) not(!) 運(yùn)算符給出值的錯(cuò)誤結(jié)果,兩個(gè) not (!!) 運(yùn)算符給出布爾值的實(shí)際結(jié)果。

語法

用戶可以遵循以下語法,使用雙 NOT 運(yùn)算符將非布爾值強(qiáng)制轉(zhuǎn)換為布爾值。 –

var non_bool = "non-bool";
var bool = !!non_bool;

登錄后復(fù)制

在上面的語法中,第一個(gè) not (!) 運(yùn)算符將字符串類型的 non_bool 變量強(qiáng)制轉(zhuǎn)換為布爾變量。第二個(gè) not(!) 運(yùn)算符用于獲取 non_bool 變量的實(shí)際布爾值。

下面是使用雙 NOT 運(yùn)算符的一些示例 –

console.log(!!0); // logs false
console.log(!!1); // logs true

登錄后復(fù)制

在上面的示例中,使用雙 NOT 運(yùn)算符將非布爾值 0 顯式強(qiáng)制為布爾值。雙 NOT 運(yùn)算符將其操作數(shù)轉(zhuǎn)換為布爾值,然后將其取反,因此表達(dá)式 !!0 相當(dāng)于 !(!false),其計(jì)算結(jié)果為 false。

讓我們看一個(gè)使用 HTML 和 JavaScript 的完整示例

示例

在此示例中,我們創(chuàng)建了三個(gè)數(shù)字變量,名為 num1、num2 和 num3。此外,我們還使用不同的正值、負(fù)值和零值初始化了數(shù)字變量。

用戶可以觀察輸出中數(shù)字的實(shí)際布爾值。零的布爾值是 false,因?yàn)樗?JavaScript 中的假布爾值之一。

<html>
<body>
   <h2> Coercion using <i> Doble NOT (!!) </i> Operator </h2>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      let num1 = 10;
      let num2 = 0;
      let num3 = -10;

      output.innerHTML += "num1 = " + num1 + "<br/>";
      output.innerHTML += "num2 = " + num2 + "<br/>";
      output.innerHTML += "num3 = " + num3 + "<br/>";
      output.innerHTML += "The boolean results of the above number values are given below.<br/>";

      // Using Double NOT Operator
      num1 = !!num1;
      num2 = !!num2;
      num3 = !!num3;

      output.innerHTML += "num1 = " + num1 + "<br/>";
      output.innerHTML += "num2 = " + num2 + "<br/>";
      output.innerHTML += "num3 = " + num3 + "<br/>";
   </script>
</body>
</html>

登錄后復(fù)制

使用 Boolean() 構(gòu)造函數(shù)進(jìn)行顯式強(qiáng)制轉(zhuǎn)換

在 JavaScript 中,顯式強(qiáng)制轉(zhuǎn)換是 JavaScript 開發(fā)人員將變量從一種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。在這里,我們將學(xué)習(xí)將非布爾值顯式強(qiáng)制轉(zhuǎn)換為布爾值。

我們可以簡單地使用 JavaScript 中的“布爾”構(gòu)造函數(shù)將任何值轉(zhuǎn)換為布爾值。

語法

用戶可以按照以下語法將 JavaScript 中的非布爾值強(qiáng)制轉(zhuǎn)換為布爾值。

let var1 = 30;
let var2 = Boolean(var1);

登錄后復(fù)制

在上面的語法中,var1 是數(shù)字?jǐn)?shù)據(jù)類型,我們使用布爾構(gòu)造函數(shù)將其強(qiáng)制轉(zhuǎn)換為布爾值。

下面是使用 Boolean() 構(gòu)造函數(shù)的一些示例 –

console.log(Boolean(0)); // logs false
console.log(Boolean(1)); // logs true

登錄后復(fù)制

在上面的示例中,使用布爾函數(shù)將非布爾值 0 顯式強(qiáng)制為布爾值。 Boolean 函數(shù)返回其參數(shù)的布爾值,因此表達(dá)式 Boolean(0) 返回 false。

當(dāng)我們將除六個(gè) false 值之外的任何非布爾值強(qiáng)制轉(zhuǎn)換為布爾值時(shí),它總是會給出 true 結(jié)果。對于六個(gè)錯(cuò)誤值,我們總是得到錯(cuò)誤的布爾值作為結(jié)果。

下面給出了六個(gè)假布爾值。

    錯(cuò)誤

    “”

    NaN

    0

    未定義

    示例

    我們在這個(gè)例子中創(chuàng)建了不同的變量,并用不同的假值初始化它們。我們可以觀察到,當(dāng)我們將它們強(qiáng)制為布爾值時(shí),它總是給出一個(gè)錯(cuò)誤的布爾值。

    <html>
    <body>
       <h2> Coercion using the <i> Boolean()</i> Constructor </h2>
       <p id = "output"> </p>
       <script>
          let output = document.getElementById("output");
          // Creating the variables
          let falsy1 = undefined;
          let falsy2 = null;
          let falsy3 = "";
    
          output.innerHTML += "falsy1 = " + falsy1 + "<br/>";
          output.innerHTML += "falsy2 = " + falsy2 + "<br/>";
          output.innerHTML += "falsy3 = " + falsy3 + "<br/>";
          output.innerHTML +=
          "The boolean results of the above falsy values are given below.<br/>";
    
          // coercing the different falsy values to the boolean values.
          output.innerHTML += "falsy1 = " + Boolean(falsy1) + "<br/>";
          output.innerHTML += "falsy2 = " + Boolean(falsy2) + "<br/>";
          output.innerHTML += "falsy3 = " + Boolean(falsy3) + "<br/>";
       </script>
    </body>
    </html>
    

    登錄后復(fù)制

    隱式強(qiáng)制

    當(dāng)在需要布爾值的上下文中使用非布爾值時(shí),就會發(fā)生隱式強(qiáng)制轉(zhuǎn)換。在這種情況下,JavaScript 將使用一組稱為“真值”和“假值”的規(guī)則自動將值轉(zhuǎn)換為布爾值。

    以下是一些如何將非布爾值強(qiáng)制轉(zhuǎn)換為布爾值的示例 –

    示例

    在此示例中,我們使用 JavaScript 中圖像的隱藏屬性通過單擊顯示圖像 –

    // Example 1: Implicit coercion in a conditional statement
    if (0) {
       console.log("This will not be logged");
    }
    
    // Example 2: Implicit coercion using the logical NOT operator
    console.log(!0); // logs true
    console.log(!1); // logs false
    

    登錄后復(fù)制

    在第一個(gè)示例中,值 0 用于條件語句中,并且使用真值和假值的規(guī)則將其隱式強(qiáng)制為布爾值。在 JavaScript 中,值 0 被視為 false,因此條件語句不會被執(zhí)行。

    在第二個(gè)示例中,邏輯 NOT 運(yùn)算符用于對非布爾值 0 的布爾值取反。邏輯 NOT 運(yùn)算符會反轉(zhuǎn)其操作數(shù)的布爾值,因此表達(dá)式 !0 等效于 !false,其評估結(jié)果為 true。

    JavaScript 中有兩種類型的強(qiáng)制轉(zhuǎn)換。一種是隱式強(qiáng)制,另一種是顯式強(qiáng)制。我們在本教程中一一學(xué)習(xí)了這兩種類型的強(qiáng)制轉(zhuǎn)換。

    以上就是解釋一下 JavaScript 中非布爾值到布爾值的強(qiáng)制轉(zhuǎn)換?的詳細(xì)內(nèi)容,更多請關(guān)注www.92cms.cn其它相關(guān)文章!

分享到:
標(biāo)簽:中非 布爾值 強(qiáng)制 解釋 轉(zhuǎn)換
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定