English
parseInt(string, radix) 解析一个字符串并返回指定基数的十进制整数,radix 是 2-36 之间的整数,表示被解析字符串的基数。
Parameters
name | type | required | description |
---|---|---|---|
string | string | YES | 要被解析的值。如果参数不是一个字符串,则将其转换为字符串 (使用 ToString抽象操作)。字符串开头的空白符将会被忽略。 |
radix | number | NO | 从 2 到 36 的整数,表示进制的基数。例如指定 16 表示被解析值是十六进制数。如果超出这个范围,将返回 NaN。假如指定 0 或未指定,基数将会根据字符串的值进行推算。注意,推算的结果不会永远是默认值 10!文章后面的描述解释了当参数 radix 不传时该 函数的具体行为。 |
Return value
Type |
---|
number |
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |
注意
const a = parseInt("a"); // 结果为 NAN
const b = parseInt("a", 16) // 结果为 10 (原因:16进制下 a 是合法字符)
const c = parseInt("546", 2) // 结果为 NAN (原因:除了“0、1”外,其他数字都不是有效二进制数字)
特别注意: 当要解析的字符串表示的数字很大(超过最大的整数 9223372036854775807 )时,将以科学计数法进行表示,此时会丢失精度( iOS 和 Android 结果一致,和 JS 结果相比有误差)。(此特性将在 HBuilderX 3.93+ 生效,HBuilderX 3.92 及以下版本可表示的数字的最大值为最大的 Int 值,iOS 平台为 9223372036854775807,Android 平台 为 2147483647,超过此值 iOS 下出现整型溢出,Android 下会返回 NAN )。
parseFloat() 函数解析一个参数(必要时先转换为字符串)并返回一个浮点数。
Parameters
name | type | required | description |
---|---|---|---|
string | string | YES | 需要被解析成为浮点数的值。 |
Return value
Type |
---|
number |
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |