一、基本概念
parseInt()是JavaScript中的函數,主要用於把字元串轉化為整數類型(number)。
語法:parseInt(string, radix)
其中,string表示要被轉換的字元串,radix為可選參數,表示要被解析的數字的基數。
返回值:將string解析成為整數後的結果。
二、用途
parseInt()主要應用在以下幾個方面:
1. 網頁表單驗證
// 比如,以下代碼用於驗證輸入的數字是否為1~100之間的整數
function validateNumber(){
let num = document.getElementById("userNum").value;
if(num === ""){
alert("請輸入數字!");
return false;
}
let newNum = parseInt(num);
if(newNum >= 1 && newNum <= 100 && Number.isInteger(newNum)){
alert("輸入正確");
return true;
} else {
alert("請輸入1~100之間的整數!");
return false;
}
}
2. 與數組的配合使用
在數組的排序或查找操作中,經常需要將字元串類型轉換為數字類型。舉個例子:
let arr = ["10", "2", "30", "5", "100"];
arr.sort(function(a, b){
return parseInt(a) - parseInt(b);
});
console.log(arr); // 輸出 ["2", "5", "10", "30", "100"]
3. 字元串的拼接與轉換
let str = "123"; let newStr = str + ""; console.log(newStr); // 輸出 "123" let newNum = parseInt(newStr); console.log(newNum); // 輸出 123
三、注意事項
1、如果字元串中存在非數字字元,parseInt()會將其忽略,只返回前面的數字部分。
let str = "123xyz"; let newNum = parseInt(str); console.log(newNum); // 輸出 123
2、如果不傳入基數參數,parseInt()會默認使用十進位進行轉換。如果字元串以”0x”開頭,會自動轉換為十六進位數。
let str1 = "13"; let str2 = "0x13"; let num1 = parseInt(str1); let num2 = parseInt(str2); console.log(num1); // 輸出 13 console.log(num2); // 輸出 19
3、對於小數類型的字元串,只會返回整數部分。
let str = "3.14"; let newNum = parseInt(str); console.log(newNum); // 輸出 3
4、字元串長度超過15位時,由於JS數字的精度問題,parseInt()可能會出現錯誤的結果。建議使用BigInt類型進行轉換。
let str = "1234567890123456"; let newNum = parseInt(str); console.log(newNum); // 輸出 1.234567890123456e+15 let bigIntNum = BigInt(str); console.log(bigIntNum); // 輸出 1234567890123456n
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/306141.html
微信掃一掃
支付寶掃一掃