使用parseInt()和Number()將字串轉換為數字
在JavaScript中將字串轉換為數字時,兩個常用的函數是parseInt () 和數字()。雖然它們都具有相同的數值轉換目的,但它們的方法和行為有所不同。
parseInt()
parseInt() 執行更具體的任務,稱為解析。它嘗試從字串中提取整數。解析時,parseInt() 從左到右讀取字串,在第一個非數字字元處停止。字串中的任何後續字元都將被忽略。
parseInt() 也採用可選的第二個參數,即基數或基數,它指定用於解釋數字的數字系統。預設基數為 10(十進位),但可以設定為 2 到 36 之間的任何整數。
範例:
parseInt("20px"); // 20 parseInt("10100", 2); // 20 (binary) parseInt("2e1"); // 2 (does not parse the "e1")
Number()
Number(),另一方面,是轉換字符串的建構函式為數字,執行型別轉換。與 parseInt() 不同,Number() 嘗試將整個字串轉換為數字,即使它包含非數字字元。
如果字串包含非數字字符,Number() 將傳回 NaN(不是-a-數字)。然而,它在特定情況下有一些值得注意的行為:
範例:
Number("20px"); // NaN Number("2e1"); // 20 Number("010"); // 10 Number("0o10"); // 8 Number("0xF"); // 15
其他注意事項
當需要將字串解析為整數時,通常首選parseInt(),而Number()更適合將值轉換為數字類型。
一元加號運算子 ( ) 也可用於將字串轉換為數字,相當於使用Number() 建構子。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3