What is the difference between parseInt(string) and Number(string) in JavaScript 之前已被询问过。
但答案基本上集中在 radix
和 parseInt
将像 "123htg"
这样的字符串转换为 123
的能力。
我在这里要问的是,当您将 实际数字字符串 完全没有基数传递给它时,Number(...)
和 parseFloat(...)
的返回是否有很大差异。
最佳答案
正如@James Allardic 已经回答的那样,内部运作并没有那么不同。不过还是有区别的。使用 parseFloat
, 以一个或多个数字字符开头后跟字母数字字符的( trim 后的)字符串可以转换为数字,Number
那不会成功。如:
parseFloat('3.23abc'); //=> 3.23
Number('3.23abc'); //=> NaN
顺便说一句,在这两种转换中,输入字符串都会被 trim :
parseFloat(' 3.23abc '); //=> 3.23
Number(' 3.23 '); //=> 3.23
关于javascript - Number(...) 和 parseFloat(...) 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11988547/