javascript - JavaScript 中的 parseInt(string) 和 Number(string) 有什么区别?

标签 javascript string-conversion

parseInt(string) 和有什么区别和Number(string)在 JavaScript 中?

最佳答案

parseInt("123qwe")

返回 123

Number("123qwe")

返回NaN

换句话说,parseInt() 解析到第一个非数字并返回它解析的任何内容。 Number() 想要将整个字符串转换为数字,顺便说一句,数字也可以是 float 。

<小时/>

编辑 #1:Lucero 评论了可以与 parseInt() 一起使用的基数。就这一点而言,请参阅下面的 THE DOCTOR's answer (我不会在这里复制它,该文档应享有相当的声誉......)。

<小时/>

编辑#2:关于用例:这已经在字里行间写下了。如果您想间接检查给定字符串是否完全表示数值、 float 或整数,请使用 Number()parseInt()/parseFloat() 并不那么严格,因为它们只是解析并在数值停止时停止(基数!),这在您需要前面的数值时非常有用”如果有的话”(请注意 parseInt("hui") 也会返回 NaN)。最大的区别是使用 Number() 不知道的基数,而 parseInt() 可能会从给定的字符串间接猜测(有时会导致奇怪的结果) )。

关于javascript - JavaScript 中的 parseInt(string) 和 Number(string) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22987600/

相关文章:

c++ - UTF-8转UTF-32,预先计算每个 'chars'的个数

C# 在语言环境中将字符串转换为 double

lua - Corona with Lua - 将文本转换为公式

javascript - 为什么我的数组未定义?

javascript - HTML5-WebRTC如何记录

javascript - 当鼠标悬停在 div 列上时如何在 map 上显示位置

php - 如何创建带有水印的jquery文本框?

javascript - JQuery 等同于 MooTools bind(this)

c++ - 当 '0' 出现在文本文件的行尾时,如何检测它?