function parse2Int(num) { return parseInt(num, 10); }
在 JavaScript 中,parseInt()
函数用于将字符串转换为整数。它的语法如下:
parseInt(string, radix);
string
参数是要转换的字符串,radix
参数是进制数(可选,默认为 10)。该函数返回解析后的整数。如果无法解析字符串,则返回 NaN。
以下是一些示例:
parseInt("123"); // 返回 123 parseInt("10", 2); // 返回 2,将二进制数 10 转换为十进制数 parseInt("0xF", 16); // 返回 15,将十六进制数 F 转换为十进制数 parseInt("hello"); // 返回 NaN,无法解析字符串
需要注意的是,如果字符串以 0x 或 0X 开头,将被解析为十六进制数。如果字符串以 0 开头,将被解析为八进制数(在 ECMAScript 5 中已经废弃),如果需要解析为十进制数,可以使用 Number()
函数进行转换。
另外,如果字符串包含非数字字符,parseInt()
函数会忽略它们并返回已经解析的整数部分,例如:
parseInt("123hello"); // 返回 123
需要注意的是,parseInt()
函数有一些坑点,例如:
- 如果省略
radix
参数,则不同浏览器可能会有不同的默认值。因此,为了避免兼容性问题,建议始终明确指定radix
参数。 - 如果字符串以 0 开头且没有指定
radix
参数,则某些浏览器会将其解析为八进制数。在 ECMAScript 5 中,这种行为已经被废弃,但在某些浏览器中仍然存在,因此建议始终指定radix
参数。 - 如果字符串包含浮点数,则
parseInt()
函数会将其截断为整数部分。
综上所述,虽然 parseInt()
函数在某些情况下非常有用,但在使用之前需要注意这些坑点。