传递浮点数时的javascript,parseInt行为 [英] javascript, parseInt behavior when passing in a float number

查看:91
本文介绍了传递浮点数时的javascript,parseInt行为的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下两个parseInt(),我不太确定他们为什么给我不同的结果:

I have the following two parseInt() and I am not quite sure why they gave me different results:

alert(parseInt(0.00001) ))显示0;

alert(parseInt(0.00000001))显示1

我猜是因为parseInt需要字符串参数,所以它将 0.00001 视为+ 0.00001 这是0.00001,因此,第一个警报将在parseInt后显示 0 。对于第二个语句,+ 0.00000001 将是1e-8,其parseInt将为 1 。我是否正确?

My guess is that since parseInt needs string parameter, it treats 0.00001 as ""+0.00001 which is "0.00001", therefore, the first alert will show 0 after parseInt. For the second statement, ""+0.00000001 will be "1e-8", whose parseInt will be 1. Am I correct?

谢谢

推荐答案

我相信你是对的。

parseInt(0.00001) == parseInt(String(0.00001)) == parseInt('0.00001') ==> 0

parseInt(0.00000001) == parseInt(String(0.00000001)) == parseInt('1e-8') ==> 1

这篇关于传递浮点数时的javascript,parseInt行为的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆