以下脚本包含一个非常奇怪的错误.我想检查一个值是否为正整数.为此,我乘以100将值括起来.如果我测试0.07,则脚本不计算值7,而是计算值7.00000001.我可以对值进行舍入,但我想知道为什么以这种方式计算值.
<script type="text/javascript">
var isPositiveInt = function(i) {
i = i*100;
return ((i % 1) == 0 && i >= 0);
};
</script>
<a href="#" onclick="alert(isPositiveInt('0.07')); return false;">Try it out!</a>
Run Code Online (Sandbox Code Playgroud)
0.05,0.06和0.08工作正常.但是0.07会发生什么?如果有人能向我解释,我会很高兴.
| 归档时间: |
|
| 查看次数: |
4119 次 |
| 最近记录: |