本文摘自PHP中文网,作者青灯夜游,侵删。

JavaScript 是一个神奇的语言,字符串转数字有 5 种方法,各有各的坑法!
本文介绍一下JavaScript字符串转数字的5种方法及其陷阱,希望对大家有所帮助。
String 转换为 Number 有很多种方式,我可以想到的有 5 种!
1 2 3 4 5 6 7 8 9 |
|
选择哪一种呢?什么时候选择它?为什么选择这种它?我们逐一进行分析,并解析每种方式的常见陷阱。
parseInt
根据 JsPerf.com 的基准测试,大多数浏览器对 parseInt 的响应最佳。虽然它是最快的方式,但使用 preseInt 会碰到一些常见陷阱:
1 2 |
|
parseInt
: 没有传入基数时,默认是传入的基数为 10 parseInt(num, 10)
,如果你不知道 num 属性的类型,不要使用 parseInt 进行字符串转数字。
parseFloat
如果你不解析 16 进制数,这是一个非常好的选择。例如:
1 2 3 4 |
|
注意:字符串中的负十六进制数字是一个特殊情况,如果你用 parseFloat 解析,结果是不正确的。为了避免程序出现 NaN 的情况,应该检查转化后的值。
1 |
|
parseFloat
: 转换十六进制数时要小心,如果你不知道要转换对象的类型,不要使用 parseFloat。
相关阅读 >>
更多相关阅读请进入《js》频道 >>

Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者