【发布时间】:2013-08-08 12:42:19
【问题描述】:
在此之前,我想说声对不起。但这不是重复的。其他帖子的任何答案都有同样的问题。 JS 中没有浮点数或整数(只有数字)。当您创建isInt() 函数时,2.00 总是将true 检测为整数。我希望将 2.00 检测为浮点数。所以,我得先把它串起来。
function isInt(i) {
if ( i.toFixed ) {
if ( i % 1 === 0 ) {
return true; // the problem is 2.00 always detected true as integer.
// i want 2.00 detected as float
} else {
return false;
}
} else {
return false;
}
}
然后我想我会将 2.00 字符串化,然后用 split('.') 拆分它。但是 toString 没有这样做
var i = 2.00;
alert(i.toString());
// Why this always result 2 . i want the character behind point
那么,该怎么做呢?我想要 2.00 结果 "2.00" ,而不仅仅是 "2"
感谢您的回答
【问题讨论】:
-
2.00 === 2; // true,如果你想要 2.d.p.查看答案,如果您想要在文字中键入的小数位数,JavaScript 不在乎,会删除零 -
在数值上,2.00 == 2。如果你没有明确地告诉它,JS 怎么知道你想要看起来像无用的 0 的东西?
-
javascript 中只存在一种数字:IEEE 754 双精度浮点数。 @NULL 有正确答案。
-
@SlametBedjo:简单的回答:你不能在 javascript 的范围内。 没有办法区分
2和2.02.00甚至2.0000000000000。