我有以下两个parseInt(),我不太清楚为什么他们给了我不同的结果:
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.我是否正确?
谢谢
解决方法
我相信你是对的.
parseInt(0.00001) == parseInt(String(0.00001)) == parseInt('0.00001') ==> 0 parseInt(0.00000001) == parseInt(String(0.00000001)) == parseInt('1e-8') ==> 1