我需要编写一个始终向上舍入的函数,但会向上舍入到小数点后 0、1 或 2 位,具体取决于函数是否传递 0、1 或 2。
示例...
四舍五入到小数点后 0 位: 13.4178 = 14
四舍五入到小数点后一位: 13.4178 = 13.5
四舍五入到小数点后两位: 13.4178 = 13.42
我找到了Math.ceil
但这只能四舍五入为整数和 to fixed()
将向上或向下舍入,而不仅仅是向上舍入。有没有办法按照我上面描述的方式进行四舍五入?
最佳答案
您可以使用一个因子乘以 10 和所需十进制计数的幂,然后对其进行四舍五入并调整点。
function up(v, n) {
return Math.ceil(v * Math.pow(10, n)) / Math.pow(10, n);
}
console.log(up(13.4178, 0));
console.log(up(13.4178, 1));
console.log(up(13.4178, 2));
关于Javascript 总是四舍五入到小数点后 X 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45793541/