本文概述
愿意解决JavaScript中一个简单的百分比变化吗?你需要做的第一件事是数学思考。你需要检索要比较的数字之间的差异(减少或增加)。需要在第一个数字(不变的数字)之间划分此差异。此操作的结果需要乘以100。将这个过程抽象为JavaScript函数, 我们将得到:
/**
* Calculates in percent, the change between 2 numbers.
* e.g from 1000 to 500 = 50%
*
* @param oldNumber The initial value
* @param newNumber The value that changed
*/
function getPercentageChange(oldNumber, newNumber){
var decreaseValue = oldNumber - newNumber;
return (decreaseValue / oldNumber) * 100;
}
请注意, 如果你更改旧数字和新数字的顺序, 答案将有所不同, 因此请确保第一个参数是该值的第一个版本, 这意味着该值不变, 而第二个参数是该值改变了。
例子
以下示例根据角度显示了百分比变化的两种不同情况, 即正数(减少)为负数(增加):
注意
负值表示百分比增加。
// X = 500
// Y = 234
// % = 53.2
getPercentageChange(500, 234);
// X = 1000
// Y = 890
// % = 11
getPercentageChange(1000, 890);
// X = 5
// Y = 2
// % = 60
getPercentageChange(5, 2);
// X = 100
// Y = 120
// % = -20
// Note: negative as it incremented 20%
getPercentageChange(100, 120);
// X = 500
// Y = 500
// % = 0
// Note: no percent change
getPercentageChange(500, 500);
在哪里可以使用此功能
例如, 如果你使用的是图像压缩算法, 则可能需要显示一个百分比的人类可读值, 该值指示从初始图像压缩了多少, 其中oldNumber是原始文件大小, 例如1MB, newNumber是500KB, 这将结果减少了50%。
编码愉快!
评论前必须登录!
注册