我怎样才能将数字(钱)除以x
该数字可以是一个或两个小数或没有
例如1000
或100.2
或112.34
我希望能够将该数字均等地划分为x部分,但是,如果不是奇数,则将多余的数字分配给最后一个数字。
例如
3856 / 3
1285.33
1285.33
1285.34
最佳答案
听起来像是一个非常简单的循环/递归。
Here you go
function divideEvenly(numerator, minPartSize) {
if(numerator / minPartSize< 2) {
return [numerator];
}
return [minPartSize].concat(divideEvenly(numerator-minPartSize, minPartSize));
}
console.log(divideEvenly(1000, 333));
为了使它成为货币的两位小数,在调用此函数之前,将两个数字乘以100,然后将每个结果除以100,然后调用
toFixed(2)
。Like so
function divideCurrencyEvenly(numerator, divisor) {
var minPartSize = +(numerator / divisor).toFixed(2)
return divideEvenly(numerator*100, minPartSize*100).map(function(v) {
return (v/100).toFixed(2);
});
}
console.log(divideCurrencyEvenly(3856, 3));
//=>["1285.33", "1285.33", "1285.34"]
关于javascript - 用小数除以javascript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19715819/