如何在 JavaScript 中檢查變數是否為布林值?


在本教程中,我們將學習如何檢查 JavaScript 中的變數是否為布林值。在 JavaScript 中,如果我們使用相等運算子匹配具有相同值但資料型別不同的兩個變數,它將返回 true 值。這意味著如果我們將兩個值為 true 但資料型別不同的變數(例如布林值和字串)進行比較,它將產生肯定的結果。

為了克服這些問題,我們需要在將變數與其他值匹配之前檢查該變數是否是布林型別。

使用者可以使用以下三種方法來檢查變數型別。

  • 使用 typeof 運算子

  • 使用嚴格相等運算子 (===)

  • 使用 toString.call() 方法

使用 typeof 運算子

typeof 運算子用於檢查 JavaScript 中的變數型別。它返回變數的型別。我們將返回的值與字串 “boolean” 進行比較,如果匹配,我們可以說變數型別是布林值。

使用者可以使用以下語法使用 typeof 運算子來檢查變數是否是布林型別。

語法

typeof variable

引數

  • variable − 它可以是任何型別的變數。

示例

在下面的示例中,我們檢查了不同變數的型別。使用者可以在輸出中看到結果。

<html> <head> <title>Check if variable is of boolean type</title> </head> <body> <h2>Check if variable is of boolean type in JavaScript using <i> typeof </i> operator.</h2> <h4>output for value true</h4> <div id = "result1"></div> <h4>Output for "true"</h4> <div id = "result2"></div> <script> let result1 = document.getElementById("result1"); let result2 = document.getElementById("result2"); let bool = true; result1.innerHTML = typeof bool; bool = "true"; result2.innerHTML = typeof bool; </script> </body> </html>

在上面的輸出中,使用者可以看到 “true” 值,它返回字串型別,而對於 true 值,typeof 運算子返回布林值。

使用嚴格相等運算子 (===)

當我們使用嚴格相等運算子比較兩個變數時,它會比較 JavaScript 中兩個變數的值和資料型別。正如使用者所知,布林資料型別有兩個值:true 和 false,我們將把變數與這兩個布林值進行比較。如果其中一個匹配條件返回 true,則該變數為布林型別。

語法

請按照以下語法使用嚴格相等運算子檢查布林型別變數。

If( variable === true || variable === false ) {
   
   // variable is of Boolean type.
}

示例

在下面的示例中,我們將 bool name 變數與 true 和 false 布林值進行了比較。使用者可以在輸出中看到結果。

<html> <head> <title>Check if variable is of boolean type</title> </head> <body> <h2>Check if variable is of boolean type in JavaScript using <i> strict equality </i> operator.</h2> <div id = "result1"></div> <script> let result1 = document.getElementById("result1"); let bool = true; if (bool === true || bool === false) { result1.innerHTML = "variable bool is type of boolean."; } else { result1.innerHTML = "variable bool is not type of boolean."; } </script> </body> </html>

使用 toString.call() 方法

在本節中,我們將學習如何使用 toString.call() 方法來檢查變數是否是布林型別。它的作用類似於 typeof 運算子,但返回不同的字串,而不僅僅是變數的資料型別。此方法返回類似於 ‘[object data_type]’ 的字串。

語法

使用者可以按照以下語法使用 toString.call() 方法。

let result = toString.call( variable ) === '[object Boolean]'

引數

  • variable − 這是我們需要檢查資料型別的變數。

示例

在下面的示例中,我們使用了 toString.call() 方法來檢查變數型別,並將其與字串 ‘[object boolean]’ 進行比較。如果兩個字串匹配,則變數為布林型別。

<html> <head> <title>Check if variable is of boolean type</title> </head> <body> <h2>Check if variable is of boolean type in JavaScript using <i> tostring.call() </i> method.</h2> <div id = "result1"></div> <script> let result1 = document.getElementById("result1"); let bool = true; if ( toString.call(bool) === '[object Boolean]' ) { result1.innerHTML = "variable bool is type of boolean."; } else { result1.innerHTML = "variable bool is not type of boolean. "; } </script> </body> </html>

在本教程中,我們已經成功學習瞭如何檢查變數是否為布林型別。在第一種方法中,我們使用了 typeof 運算子,它也可以用於檢查任何變數的資料型別。

在第三種方法中,我們使用了 toString.call() 方法,其作用與 typeof 運算子相同。但是,嚴格相等運算子是比呼叫方法更好的解決方案。

更新於:2022年8月8日

27K+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告