如何在JavaScript中將字串轉換為數字?
為了在JavaScript中將字串轉換為數字,這有助於使用者執行精確的數學運算、比較和處理表單輸入。我們將討論各種方法,併為每種方法提供示例程式碼,以在JavaScript中將字串轉換為數字。
在本文中,我們有一個字串值,我們的任務是在JavaScript中將字串轉換為數字。
在JavaScript中將字串轉換為數字的方法
以下是本文將討論的幾種在JavaScript中將字串轉換為數字的方法,我們將逐步解釋並提供完整的示例程式碼。
- 使用Number建構函式轉換為數字
- 使用parseFloat方法轉換為數字
- 使用parseInt方法轉換為數字
- 使用一元運算子轉換為數字
- 透過乘以1轉換為數字
- 透過除以1轉換為數字
- 從字串中減去0
- 使用按位非運算子轉換為數字
- 使用雙波浪線運算子轉換為數字
- 使用Math.floor方法轉換為數字
- 使用Math.round方法轉換為數字
- 使用Math.ceil方法轉換為數字
使用Number建構函式轉換為數字
為了在JavaScript中將字串轉換為數字,我們使用了Number()建構函式。使用Number()建構函式可以將字串等資料型別轉換為數字。
示例
這是一個使用**Number()**建構函式將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = Number(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用parseFloat方法轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了**parseFloat()**方法,該方法將字串轉換為浮點數,並保留小數部分。
示例
這是一個使用**parseFloat()**方法將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123.29"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = parseFloat(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用parseInt方法轉換為數字
在這種方法中,我們使用了**parseInt()**方法在JavaScript中將字串轉換為數字。它接受字串作為引數,並將字串轉換為整數值。
示例
這是一個使用**parseInt()**方法將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = parseInt(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用一元運算子轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了**一元(+)**運算子。它強制進行型別轉換,JavaScript會在內部檢查有效的數字(即整數或浮點數),然後透過型別強制或自動轉換將其轉換為數字。
示例
這是一個使用**一元**運算子將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = +str; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
透過乘以1轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們將字串乘以1,這會強制自動將字串轉換為數字。
示例
這是一個將字串乘以1以將其轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = str*1; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
透過除以1轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們將字串除以1,這會強制自動將字串轉換為數字。
示例
這是一個將字串除以1以將其轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = str/1; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
從字串中減去0
在這種將字串轉換為JavaScript數字的方法中,我們從字串中減去了0,這會強制自動將字串轉換為數字。
示例
這是一個從字串中減去0以將其轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = str-0; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用按位非運算子轉換為數字
在這種方法中,我們使用了按位非運算子在JavaScript中將字串轉換為數字。按位非運算子會反轉運算元,然後將其轉換為32位有符號整數,從而將字串轉換為數字。
示例
這是一個使用按位**非**運算子將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = ~str; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用雙波浪線運算子轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了**雙波浪線(~~)**運算子。它會兩次應用非運算子,從而將字串轉換為數字,強制進行自動轉換。
示例
這是一個使用**雙波浪線(~~)**運算子將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = ~~str; res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用Math.floor方法轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了Math.floor方法。它透過型別強制將字串轉換為數字,然後將數字舍入到最接近的整數值。
示例
這是一個使用**Math.floor**方法將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123.2"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = Math.floor(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用Math.round方法轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了Math.round方法。它透過型別強制將字串轉換為數字,然後將數字舍入到最接近的整數值,將小數0.5視為臨界點。
示例
這是一個使用**Math.round**方法將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123.6"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = Math.round(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
使用Math.ceil方法轉換為數字
在這種將字串轉換為JavaScript數字的方法中,我們使用了Math.ceil方法。它透過型別強制將字串轉換為數字,然後將數字舍入到最接近的向上整數值,即使小數位的值很小。
示例
這是一個使用**Math.ceil**方法將字串轉換為數字的示例。
<html> <body> <div id="str"></div> <div id="num"></div> <script> let x=document.getElementById("str"); let str = "123.01"; x.innerHTML = "Input String: " + str + ", It is of type: " +typeof str; let res=document.getElementById("num"); let num = Math.ceil(str); res.innerHTML = "Result: " + num + ", It is of type: " +typeof num; </script> </body> </html>
注意:除**雙波浪線**運算子外,所有上述方法對於非數字字元(既不是數字也不是整數)都返回**NaN(非數字)**。它返回0。
結論
在JavaScript中將字串轉換為數字是一項非常簡單易行的任務。在本文中,我們討論了十二種方法:使用**Number()**建構函式、**parseFloat()**方法、**parseInt()**方法、**一元**運算子、**乘以和除以1**、**從字串中減去0**、按位**非**運算子、**雙波浪線**運算子、**Math.floor()**方法、**Math.round()**方法以及使用**Math.ceil()**方法。