在 JavaScript 中,parseInt() 是一个全局函数,用于将字符串转换为整数。它的作用是从字符串的开头解析并返回一个整数,忽略开头的空白字符,直到遇到非数字字符为止。parseInt() 的语法parseInt() 是JavaScript中的内置函数,作用是将参数强制转换为整数。
一、javascript中parseint()的用法?
javascriptparseInt(string, radix);
string:要解析的字符串。如果参数不是字符串,会先自动转换为字符串。
radix:表示字符串的进制,范围是 2 到 36。默认值是 10(十进制),但建议始终显式指定以避免意外行为。
二、parseInt() 的作用
字符串转整数:将数字字符串转换为整数。
处理非数字字符:从字符串开头解析,遇到第一个非数字字符时停止。
进制转换:通过 radix 参数支持二进制、十六进制等进制转换。
使用示例
1. 基本用法
javascriptconsole.log(parseInt("123")); // 123(十进制)console.log(parseInt(" 42")); // 42(忽略开头空格)console.log(parseInt("123abc")); // 123(遇到非数字字符停止)console.log(parseInt("abc123")); // NaN(开头无法解析为数字)
2. 指定进制(radix)
javascriptconsole.log(parseInt("1010", 2)); // 10(二进制转十进制)console.log(parseInt("FF", 16)); // 255(十六进制转十进制)console.log(parseInt("077", 8)); // 63(八进制转十进制)
3. 特殊情况
javascriptconsole.log(parseInt("")); // NaN(空字符串)console.log(parseInt(null)); // NaN(null → "null" 后解析失败)console.log(parseInt(true)); // NaN(true → "true" 后解析失败)console.log(parseInt("12.9")); // 12
三、注意事项
始终指定 radix:
如果不传 radix,parseInt 会尝试根据字符串前缀猜测进制(如 "0x" 开头按十六进制解析),可能导致意外结果:
javascriptconsole.log(parseInt("0x10")); // 16(自动识别为十六进制)console.log(parseInt("010")); // 10 或 8
与 Number() 的区别:
parseInt("123abc") → 123(部分解析)。
Number("123abc") → NaN(严格转换)。
浮点数处理:
parseInt 会直接截断小数部分,而非四舍五入:
javascriptconsole.log(parseInt("12.9")); // 12
替代方案
如果需要浮点数,使用 parseFloat()。
严格类型转换时,优先用 Number() 或一元加号 +:
javascriptconsole.log(+"123"); // 123(字符串转数字)console.log(Number("123")); // 123
parseInt() 的核心作用是将字符串解析为整数,支持指定进制,但需注意其部分解析和进制猜测的特性。在不确定输入格式时,建议先验证字符串或使用更严格的转换方法。