JS使用parseInt()和正則截取字元串中數字 點擊打開視頻講解更加詳細 parseInt() 函數 定義和用法 parseInt() 函數可解析一個字元串,並返回一個整數。 當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數 當忽略 ...
JS使用parseInt()和正則截取字元串中數字
parseInt() 函數
定義和用法
parseInt() 函數可解析一個字元串,並返回一個整數。
當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數
當忽略參數 radix , JavaScript 預設數字的基數如下:
- 如果 string 以 "0x" 開頭,parseInt() 會把 string 的其餘部分解析為十六進位的整數。
- 如果 string 以 0 開頭,那麼 ECMAScript v3 允許 parseInt() 的一個實現把其後的字元解析為八進位或十六進位的數字。
- 如果 string 以 1 ~ 9 的數字開頭,parseInt() 將把它解析為十進位的整數。
parseFloat() 函數
定義和用法
parseFloat() 函數可解析一個字元串,並返回一個浮點數。
該函數指定字元串中的首個字元是否是數字。如果是,則對字元串進行解析,直到到達數字的末端為止,然後以數字返回該數字,而不是作為字元串。
截取字元串中數字
1、使用parseInt()
let str = "4500元";
let num = parseInt(str);
alert(num); //4500
對,你沒有看錯,parseInt()方法參數可以有非數字字元串,只要數字在字元串前面就可以,遇到非數字字元停下來,返回前邊的數字。
這種方式的缺點是不能提取數字在中間的字元串中的數字。
2、使用正則
let s = "價格4500元";
let num = s.replace(/[^0-9]/gi, "");
alert(num); //4500