计算javascript中的%变化

问题描述 投票:0回答:4
var current = 12000;
var june = 14600;
var may = 11200;

我希望相对于'当前'月份参数的百分比变化。输出应该是百分比,它可以添加或减去w.r.t.本月。这该怎么做?

javascript math percentage
4个回答
3
投票

简单的数学:

var res=(current-june)/current*100.0;

1
投票
var percentchange = (june - current) / current * 100.0;

如果您的答案是负数,那么这是一个百分比增加其他减少。


1
投票

处理特殊情况,增加或减少,四舍五入,超过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
投票

请注意,如果您的某个值为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);
    }
© www.soinside.com 2019 - 2024. All rights reserved.