计算百分比值在javascript和c#之间变化

时间:2013-11-08 12:00:50

标签: c# javascript math

我正在尝试计算百分比值,我需要它在javascript和c#之间相似,但它有所不同。

例如:8.70%的85 = 7.394999999999999在javascript中,但在c#中它是7.395。

如何让javascript与c#具有相同的输出。请建议。

修改

在计算85和9.25的8.70%百分比时,我难以四舍五入。

85的8.70%的结果应该是7.40,但javascript给出7.39。 9.25的8.70%的结果应为0.80,这很好。

以下是我在javascript中使用的代码:

(85*8.70/100).toFixed(2)
(9.25*8.70/100).toFixed(2)

请输入任何内容?

2 个答案:

答案 0 :(得分:2)

只需使用toFixed(n)方法将小数点后的数字四舍五入为n位数:

7.394999999999999.toFixed(3);

有关数字可用的完整列表方法,请查看MDN documentation

答案 1 :(得分:1)

在C#中,85d * 8.7d / 100d给出7.3949999999999987。另一方面,85d / 100d * 8.7d给出7.395。如果你使用完全相同的精度数据类型和算术,结果应该是相同的,但很难做到正确,特别是在多平台方式。因此,您应该使用舍入,就像使用浮点数时几乎总是使用舍入一样。