初级程序员在这里。我目前正在处理四舍五入数字功能
因此,起初,每个项目都会有一个价格。然后还有一个额外的百分比按钮,用于根据插入的值来提高商品价格。
假设商品A的价格为1美元,然后我将25%的值插入该百分比中。它会给我1.33。
如何编写一个将返回1.35而不是1.33的函数?
另一个示例,$ 2.67变为$ 2.70,$ 12.34变为$ 12.35
这是我的代码
var price = parseFloat(items.price); //1
var percentage = parseFloat(vm.data.percentage); //25%
added_price = parseFloat(price) / (parseFloat(100) - parseFloat(percentage)) * 100; //formula
items.price = parseFloat(added_price).toFixed(vm.data.decimal); //the result = 1.33
有人可以帮我吗?谢谢 :)
最佳答案
完成此“自定义”步骤的步骤。
乘以2,以得到最接近的0.5。
乘以10,这样就可以四舍五入。
四舍五入/关闭数字。
用20除以撤消乘法。
输出已验证。 :)
乘以2
并四舍五入。仅供参考,它将是2.65
而不是2.70
。您需要使用Math.ceil()
而不是round
。
var p1 = 2.67;
var p2 = 12.34;
function round_to_custom(num) {
num *= 20;
num = Math.round(num);
num /= 20;
return num;
}
console.log(round_to_custom(p1));
console.log(round_to_custom(p2));
使用
ceil
(以从客户那里获得更多的$$$):var p1 = 2.67;
var p2 = 12.34;
function round_to_custom(num) {
num *= 20;
num = Math.ceil(num);
num /= 20;
return num;
}
console.log(round_to_custom(p1));
console.log(round_to_custom(p2));