在JavaScript中,parseInt(string)Number(string)有什么不同?

推荐答案

parseInt("123qwe")

返回123

Number("123qwe")

返回NaN

换句话说,parseInt()解析到第一个非数字,并返回它解析的内容.Number()希望将整个字符串转换为数字,顺便说一句,数字也可以是浮点.


编辑#1:Lucero comments 了可以与parseInt()一起使用的基数.关于这一点,请看下面的THE DOCTOR's answer条(我不打算在这里复制,doctor 应该有一个公平的声誉份额…).


EDIT #2: Regarding use cases: That's somewhat written between the lines already. Use Number() in cases where you indirectly want to check if the given string completely represents a numeric value, float or integer. parseInt()/parseFloat() aren't that strict as they just parse along and stop when the numeric value stops (radix!), which makes it useful when you need a numeric value at the front "in case there is one" (note that parseInt("hui") also 返回NaN). And the biggest difference is the use of radix that Number() doesn't know of and parseInt() may indirectly guess from the given string (that can cause weird results sometimes).

Javascript相关问答推荐

Flutter:显示PDF和视频,但阻止下载

如何制作删除按钮以从列表中删除该项目所属的项目?

reaction useEffect KeyDown for each 条目配音输出

主要内部的ExtJS多个子应用程序

如何通过onClick为一组按钮分配功能;

是什么原因导致此Angular 16应用程序中类型错误时属性结果不存在?

在拖放时阻止文件打开

为什么按钮会随浮动属性一起移动?

编剧如何获得一个div内的所有链接,然后判断每个链接是否都会得到200?

WP Bootstrap NavWaker:下拉菜单一次打开所有下拉菜单

为什么我的自定义元素没有被垃圾回收?

TinyMCE 6导致Data:Image对象通过提供的脚本过度上载

搜索功能不是在分页的每一页上进行搜索

传递方法VS泛型对象VS事件特定对象

为列表中的项目设置动画

使用Reaction窗体挂钩注册日历组件

每隔3个项目交替显示,然后每1个项目交替显示

如何使用Reaction路由导航测试挂钩?

Firefox的绝对定位没有达到预期效果

当S点击按钮时,我如何才能改变它的样式?