欢迎访问我的博客https://qqqww.com/,祝码农同胞们早日走上人生巅峰,迎娶白富美~~~
英文好的,请移步
MDN
parseInt()
MDN
中对parseInt()
的讲解总结如下:
语法
parseInt(string, [radix]);
参数
string:
必需,要解析的值,如果string
不是字符串,则将其转化为字符串,并忽略字符串中的前面的空格
radix:
可选,一个介于2到36之间的整数,表示进制,假设parseInt('10', 8)
,就表示以 8
进制来解析这个字符串 10
返回值
从给定字符串中解析的整数,如果第一个字符不能够被转换为数字,则返回 NaN
说明
-
如果
radix
为 0,或者没有设置该参数的时候,parseInt()
会根据string
判断需要多少进制 -
如果 string 以
0x
开头,parseInt()
会把string
其余部分解析为 十六进制的整数 -
如果
string
以 0 开头,那么ECMAScript v3
允许parseInt()
的一个实现把其后的字符解析为八进制或十六进制的数字,关于这一点,我去控制台测试parseInt('010') = 10
,并没有像官方说的那样按照 8 进制去解析字符串10
,TODO:所以此处,还待求证,保留意见,欢迎广大道友提出宝贵意见~~ -
如果
string
以1 ~ 9
的数字开头,parseInt()
将把它解析为十进制的整数
注意:
- 只有字符串中的第一个数字会被返回
- 开头和结尾的空格是允许的
- 如果字符串的第一个字符不能被转换为数字,则返回
NaN
- 当
radix <= string字符串的第一个数字
,返回NaN
,下面是我在控制台测试的一些实例
parseInt('9asdsad9')
9
parseInt('9asdsad9', 10)
9
parseInt('9asdsad9', 11)
109
parseInt('9asdsad9', 12)
118
parseInt('9asdsad9', 0)
9
parseInt('9asdsad9', 6)
NaN
parseInt('9asdsad9', 8)
NaN
parseInt('9asdsad9', 9)
NaN
parseInt('9asdsad9', 9)
NaN
parseInt('9asdsad9', 10)
9
parseInt('8asd9', 9)
8
parseInt('9', 9)
NaN
网友评论