使用parseInt()和Number()将字符串转换为数字
在JavaScript中将字符串转换为数字时,两个常用的函数是parseInt () 和数字 ()。虽然它们都具有相同的数值转换目的,但它们的方法和行为有所不同。
parseInt()
parseInt() 执行更具体的任务,称为解析。它尝试从字符串中提取整数。解析时,parseInt() 从左到右读取字符串,在第一个非数字字符处停止。字符串中的任何后续字符都将被忽略。
parseInt() 还采用可选的第二个参数,即基数或基数,它指定用于解释数字的数字系统。默认基数为 10(十进制),但可以设置为 2 到 36 之间的任何整数。
示例:
parseInt("20px"); // 20 parseInt("10100", 2); // 20 (binary) parseInt("2e1"); // 2 (does not parse the "e1")
Number()
Number(),另一方面,是一个转换字符串的构造函数为数字,执行类型转换。与 parseInt() 不同,Number() 尝试将整个字符串转换为数字,即使它包含非数字字符。
如果字符串包含非数字字符,Number() 将返回 NaN(不是-a-数字)。然而,它在特定情况下有一些值得注意的行为:
示例:
Number("20px"); // NaN Number("2e1"); // 20 Number("010"); // 10 Number("0o10"); // 8 Number("0xF"); // 15
其他注意事项
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3