圆形半便士?

mpe*_*pen 7 javascript

可能重复:
JavaScript中最接近的0.10
整数舍入到N个小数位

我怎样才能圆花车如0.0750.08在Javascript?

zne*_*eak 7

你需要乘以一百(以便分数将被舍入),然后除以一百来再次得到合适的美元价格.

var dollars = 0.075; // 0.075 dollars
var cents = dollars * 100; // ... is 7.5 cents
var roundedCents = Math.round(cents); // ... but should really be 8 cents
var roundedPrice = roundedCents / 100; // ... so it's 0.08 dollars in the end
Run Code Online (Sandbox Code Playgroud)


Dav*_*ker 6

使用 Math.round()。摘自这篇文章

var original=28.4531

// round "original" to two decimals
var result = Math.round(original*100)/100;
// returns 28.45

// round "original" to 1 decimal
var result = Math.round(original*10)/10;
// returns 28.5

// round 8.111111 to 3 decimals
var result = Math.round(8.111111*1000)/1000;
// returns 8.111
Run Code Online (Sandbox Code Playgroud)


Dan*_*uis 5

Javascript 有 3 个舍入函数,它们都是Math对象的成员:(round向上或向下舍入,到最接近的整数)、floor(向下舍入)和ceil(向上舍入)。不幸的是,这三个数字都只能四舍五入到最接近的整数。但是,您可以先将您的美元金额相乘(得到便士),然后再ceil四舍五入到下一个便士;

var money = 0.075;
var pennies = money * 100;
money = Math.ceil(pennies) / 100;
Run Code Online (Sandbox Code Playgroud)