我写的行为有所依赖于数字类型它的参数的函数。 整数或浮点数。
使用一些代码从这个问题我如何检查一个数字是浮动或整数? 很容易检测是否浮动或没有,但后来我偶然发现的JavaScript投下的情况下1.0
到1
无故,如果你使用这个数字调用一个函数。
例:
function dump(a, b) {
console.log(a, typeof b, b);
}
dump('1', 1);
dump('1.0', 1.0);
dump('1.1', 1.1);
输出浏览器,Firefox,即,Opera和Safari都给出了相同的结果:
1 number 1
1.0 number 1 "wrong"
1.1 number 1.1
我知道的JavaScript只知道类型number
而是被迫投似乎去的方式过分。 我想出的唯一办法就是使用类似字符串值调用的函数'1.0'
,检测点和使用parseFloat
或parseInt
。
对任何建议?