本文深入解析 JavaScript 中 parseFloat() 函数的定义、语法及返回值。详细阐述其处理字符串首字符、忽略前后空格及提取首个数字的规则,并对比 parseInt()。重点澄清关于“第二个参数表示进制”的常见误区,通过代码示例展示不同输入下的输出结果,帮助开发者准确使用浮点数解析功能。
parseFloat 函数概述与背景
在研读 jQuery 源码时,遇到了 parseFloat(第一个参数, 10) 的写法,起初对第二个参数 10 的含义感到困惑。经过查阅相关资料并整理笔记,特此记录以防遗忘。
语法定义与返回值
parseFloat() 函数的主要功能是解析一个字符串,并将其转换为浮点数返回。
该函数的语法格式为 parseFloat(string),其中 string 参数是必需的,代表需要被解析的字符串对象。
函数的返回值为解析后得到的数字结果。
使用 parseFloat 时需留意以下注意事项。:
解析规则与注意事项
需要注意,字符串开头和结尾的空格会被自动忽略,不影响解析结果。
若字符串的第一个字符无法被转换为数值,parseFloat() 将返回 NaN(Not a Number)。
如果仅需解析并保留数字的整数部分,建议使用 parseInt() 方法代替。
解析过程仅提取字符串中的第一个有效数字,后续字符将被忽略。
以下是相关的测试示例。:
代码示例与输出结果
具体代码实现如下:
<script type="text/javascript">
document.write(parseFloat("10"))
document.write(parseFloat("10.00"))
document.write(parseFloat("10.33"))
document.write(parseFloat("34 45 66"))
document.write(parseFloat(" 60 "))
document.write(parseFloat("40 years"))
document.write(parseFloat("He was 40"))
</script> 依次输出:
10
10
10.33
34
60
40
NaN
关于第二个参数的说明
关于前文提到的 parseFloat(第一个参数, 10) 中的第二个参数 10,原文解释称其表示转化的进制,即转为 10 进制。