var current = 12000;
var june = 14600;
var may = 11200;
我希望相对于'当前'月份参数的百分比变化。输出应该是百分比,它可以添加或减去w.r.t.本月。这该怎么做?
简单的数学:
var res=(current-june)/current*100.0;
var percentchange = (june - current) / current * 100.0;
如果您的答案是负数,那么这是一个百分比增加其他减少。
处理特殊情况,增加或减少,四舍五入,超过100%等并非易事。
function calcPc(n1,n2){
return (((n2 - n1) / n1 * 100).toLocaleString('fullwide', {maximumFractionDigits:3}) + "%");
}
console.log(
" May: " , calcPc(11200,12000) ,
"\nJune:" , calcPc(14600,12000)
)
请注意,如果您的某个值为0,则将获得-100%或Infinity%。这解决了这个问题:
function percIncrease(a, b) {
let percent;
if(b !== 0) {
if(a !== 0) {
percent = (b - a) / a * 100;
} else {
percent = b * 100;
}
} else {
percent = - a * 100;
}
return Math.floor(percent);
}