JavaScript 中 NaN 如何轉換為數字?


在本文中,我們將學習如何將 NaN 轉換為數字。JavaScript 中的 NaN 表示非數字,其型別為 Number,但實際上它不是數字。要將 NaN 轉換為數字,我們使用多種方法,其中一些將在下面討論。

  • 使用 OR(||)運算子
  • 使用 isNaN() 方法
  • 使用 ~~ 運算子
  • 使用三元運算子

使用 OR(||)運算子

OR 運算子在 JavaScript 中由 || 符號表示。要將 NaN 轉換為數字,我們使用OR 運算子結合 NaN 和任何數字,OR 運算子將返回該數字。

語法

NaN || 0;

當我們在 NaN 和 0 之間計算 OR 時,結果為 0。透過這種方式,我們將 NaN 轉換為數字。

示例

在這個示例中,我們建立了一個名為 num 的變數,並將其值賦值為NaN || 0.

<html> <head> <title> Example: Convert NaN to Number</title> </head> <body> <p> Convert NaN to Number </p> <p id ="output"></p> <script> let num = NaN || 0; document.getElementById("output").innerHTML += num +"<br>"; document.getElementById("output").innerHTML += typeof num </script> </body> </html>

使用 isNaN 方法

isNaN 方法用於檢查一個值是否為 NaN。它接收一個引數,如果該值為 NaN 則返回 true,如果該值不為 NaN 則返回 false。要將 NaN 轉換為數字,首先檢查變數是否為 NaN,如果變數為 NaN,則為其賦值任何數字。

語法

isNaN( num )

示例

在這個示例中,我們建立了一個名為 num 的變數,並將其賦值為 NaN,然後我們使用 isNaN 方法檢查 num 是否為 NaN,並在條件為 true 時將其賦值為 0。

<html> <head> <title> Example: Convert NaN to Number</title> </head> <body> <p> Convert NaN to Number </p> <p id ="output"></p> <script> let num = NaN; if ( isNaN( num )) { num = 0 } document.getElementById("output").innerHTML += num +"<br>"; document.getElementById("output").innerHTML += typeof num </script> </body> </html>

使用 ~~ 運算子

~~ 運算子也稱為雙波浪號或雙按位非運算子。它用於對正數進行向下取整,它是 Math.floor() 方法的簡寫形式,但僅適用於正數。要將 NaN 轉換為數字,我們只需在 NaN 前面使用此運算子。

語法

~~NaN

示例

在這個示例中,我們將 ~~NaN 賦值給變數 num,並列印 num 的值和型別。

<html> <head> <title> Example: Convert NaN to Number</title> </head> <body> <p> Convert NaN to Number </p> <p id ="output"></p> <script> let num = ~~NaN; document.getElementById("output").innerHTML += num +"<br>"; document.getElementById("output").innerHTML += typeof num </script> </body> </html>

使用三元運算子

條件運算子或三元運算子首先評估一個表示式以獲取 true 或 false 值,然後根據評估結果執行兩個給定語句之一。

語法

NaN ? NaN : num

在給定的示例中,清楚地說明了如何使用三元運算子將 NaN 轉換為數字。

示例

<html> <head> <title> Example: Convert NaN to Number</title> </head > <body> <p> Convert NaN to Number </p> <p id ="output"></p> <script> let num = NaN ? NaN : 0; document.getElementById("output").innerHTML += num +"<br>"; document.getElementById("output").innerHTML += typeof num </script> </body> </html>

正如我們提到的四種將 NaN 轉換為數字的方法,您可以根據需要使用任何一種方法,第三種方法(使用 ~~)是最快的方法,但它使我們的程式碼可讀性略差,如果可讀性不是問題,那麼您可以使用此方法,否則三元運算子方法和邏輯運算子方法在可讀性方面是最佳選擇。

更新於: 2022年8月11日

9K+ 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.