javascript 中的 Math.round MidPointRounding.AwayFromZero

mar*_*zjc 3 javascript c# math rounding

我想从 c# 中的这一行在 javascript 中获得相同的结果:

round = Math.Round((17245.22 / 100), 2, MidpointRounding.AwayFromZero);
// Outputs: 172.45
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这个但没有成功:

var round = Math.round(value/100).toFixed(2);
Run Code Online (Sandbox Code Playgroud)

Dav*_*ica 5

如果你知道你将被 潜水100,你可以先四舍五入然后除以:

var round = Math.round(value)/100; //still equals 172.45
Run Code Online (Sandbox Code Playgroud)

但是,如果您不知道要使用什么潜水,您可以使用以下更通用的形式:

var round = Math.round(value/divisor*100)/100; //will always have exactly 2 decimal points
Run Code Online (Sandbox Code Playgroud)

在这种情况下,*100将保留 2 个小数点后的位置Math.round,并且/100移动将它们移回到小数点后面。