Javascript JS保留以零结尾的小数

Javascript JS保留以零结尾的小数,javascript,Javascript,在JavaScript中,是否可以“锁定”十进制数,以保留以零结尾的“浮点”数 例如,我有两个不同的数字,如下所示:(伪代码) (也应不同于“真整数”1) 我想让它们相互区别,因为它们的末尾有不同数量的零 但是愚蠢的“高效”JavaScript将它们都舍入为“整数”1&因此它们是相等的 我知道Number.toFixed(Number)&Number.toPrecision(Number)函数,但要像这样使用它们,我必须首先计算数字的长度,我不能计算,因为JavaScript已经舍入了零 我也一

在JavaScript中,是否可以“锁定”十进制数,以保留以零结尾的“浮点”数

例如,我有两个不同的数字,如下所示:(伪代码)

(也应不同于“真整数”
1

我想让它们相互区别,因为它们的末尾有不同数量的零

但是愚蠢的“高效”JavaScript将它们都舍入为“整数”
1
&因此它们是相等的

我知道
Number.toFixed(Number)
&
Number.toPrecision(Number)
函数,但要像这样使用它们,我必须首先计算数字的长度,我不能计算,因为JavaScript已经舍入了零

我也一直在考虑在小数点处“截断”数字,并将它们存储在一个数组中。。。但同样,四舍五入为“int”,不带小数点

(是的,我知道JS中不存在“float”的概念,我在这里用它来区分带小数或不带小数的数字)


感谢您的帮助。

要比较两个不确定类型的变量,必须在内部强制转换这些变量。这就是问题所在。因为A和B都是厚度为1的集合。 因此,结果是正确的

但是,如果要比较零的数量,则必须将它们作为字符串进行比较

所以要么你用

let a = '1.0';
let b = '1.00';
或者使用

a.toString() === b.toString();

为什么不把它保留为字符串?因为:“1.0”+“1.00”=“1.01.00”毫无意义。那么如果它是一个整数,那么1.0+1.00是什么?2.0或2.00为什么javascript应该保留前导零?它们只是计算器中的开/关位,没有base10长度的概念。你所看到的只是一种人性化的表现,所以你的问题毫无意义sense@SebastianNorr数字没有长度,也没有舍入<代码>变量a=1.00,b=0x01和偶数
var c=6/(2*3)是完全相同的值。仅仅因为你写的不一样并不能改变数字。如果你想要某种格式,你需要自己处理;数字根本不包含它。这可能有用。我可以将它们存储为字符串并比较字符串,当我需要对它们进行数学运算时,我可以使用Number.paseInt(Number);那么,如何从以零结尾的十进制数中生成“保留十进制的字符串”?
a.toString() === b.toString();