parseInt()
函数解析一个字符串参数,并返回指定基数的整数。
示例
const stringDate = "1996";
// parse the string to decimal
let intDate = parseInt(stringDate, 10);
console.log(intDate)
// Output: 1996
parseInt() 语法
parseInt()
函数的语法是
parseInt(string, radix)
parseInt() 参数
parseInt()
函数接受
- string - 要解析的值。如果它不是字符串,则使用ToString抽象操作将其转换为字符串。
- radix (可选) - 一个介于 2 到 36 之间的整数,表示数字系统的基数。
parseInt() 返回值
- 返回从给定string解析出的整数。
- 当以下情况时返回
NaN
- radix 小于 2 或大于 36。
- 第一个非空格字符无法转换为数字。
示例:使用 parseInt()
console.log(parseInt("875.99", 10)); // 875
console.log(parseInt("F", 16)); // 15
console.log(parseInt("0xF")); // 15 -> JavaScript consider 0x... to be hexadecimal
console.log(parseInt("-17", 8)); // -15
// int is detected till a non-numeric character
console.log(parseInt("85,123", 10)); // 85
console.log(parseInt("FXX123", 16)); // 15
console.log(parseInt("45", 13)); // 57
console.log(parseInt("Hello", 8)); // NaN
console.log(parseInt("546", 2)); // NaN -> Invalud as binary has only 1 or 0
// BigInt values lose precision
console.log(parseInt("464546416543075614n")); // 464546416543075600
输出
875 15 15 -15 85 15 57 NaN NaN 464546416543075600
注意:如果 radix
参数为 undefined
、0 或未指定,JavaScript 会考虑以下情况
- 如果字符串以 "0x" 开头,则
radix
为 16 (十六进制)。 - 如果字符串以 "0" 开头,则
radix
为 8 (八进制) 或 10 (十进制)。实际选择的radix
取决于实现。 - 如果字符串以任何其他值开头,则
radix
为 10 (十进制)。
另请阅读