我在尝试计算2个数字之间的剩余百分比时遇到问题。
我已经研究了如何使用以下函数获取当前百分比:
function GetPercentage(x,y){
return ((x /y) * 100).toFixed(0);
}
我需要帮助的部分是获得剩余的百分比。
例如:
让我们说最大值为31,值为1,如何返回值97%
如果我使用GetPercentage(1,31),使用上面的函数,它将返回3。 但是,我需要帮助函数返回97。
我尝试过使用以下但似乎没有用。我猜我的数学不正确,希望有人能纠正我。
alert(GetPercentage(1,31) + "%" + " used. " + availablePercentage(5,31) + "% still available"); // trying to make it say: 3% used. 97% still available
function GetPercentage(x,y){
return ((x / y) * 100).toFixed(0);
}
function availablePercentage(x,y){
return ((y-x)/100).toFixed(0);
}
答案 0 :(得分:0)
听起来你需要从100减去你计算的数字。
function availablePercentage(x,y){
return 100 - GetPercentage(x, y);
}
答案 1 :(得分:0)
我相信你正在寻找的合适的公式是
((y - x) / y) * 100
因此,对于输入x = 1
和y = 31
,您将获得
((31 - 1) / 31) * 100
(30 / 31) * 100
96.77
答案 2 :(得分:0)
我猜你的意思是,因为有31个事情要做,我已经完成了1剩下的百分比是什么?
你需要从1中减去(如果你想要从0到100的百分比,则乘以100)
例如
function todoPercent(numTodo, numDone){
return (1-numDONE/numTodo)*100;
}