Comment calculer un changement de pourcentage (augmentation et diminution) à partir de 2 valeurs en JavaScript

Prêt à résoudre un simple changement de pourcentage en JavaScript? La première chose à faire est de penser mathématiquement. Vous devez récupérer la différence (diminution ou augmentation) entre les nombres que vous comparez. Cette différence doit être divisée entre le premier nombre (celui qui ne change pas). Le résultat de cette opération doit être multiplié par 100. En faisant une abstraction de ce processus dans une fonction JavaScript, nous aurions:

/** * 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;}

Notez que si vous modifiez l’ordre de l’ancien et du nouveau nombre, la réponse serait différente, alors assurez-vous que le premier argument est la première version de la valeur, cela signifie celle qui n’a pas changé et comme deuxième argument la valeur qui a changé.

Exemples

Les exemples suivants montrent différents cas de variation en pourcentage à la fois positive (diminution) et négative (augmentation) selon le point de vue:

Note

Une valeur négative indique une augmentation en pourcentage.

// X = 500// Y = 234// % = 53.2getPercentageChange(500, 234);// X = 1000// Y = 890// % = 11getPercentageChange(1000, 890);// X = 5// Y = 2// % = 60getPercentageChange(5, 2);// X = 100// Y = 120// % = -20// Note: negative as it incremented 20%getPercentageChange(100, 120);// X = 500// Y = 500// % = 0// Note: no percent changegetPercentageChange(500, 500);

Où cette fonction peut-elle être utilisée

Par exemple, si vous travaillez avec des algorithmes de compression d’image, vous voudrez peut-être afficher une valeur lisible par l’homme en pourcentage qui indique combien a été compressé à partir de l’image initiale, où l’ancien numéro est la taille de fichier d’origine, par exemple 1 Mo et le nouveau numéro est 500 Ko, ce qui entraînerait une diminution de 50%.

Bon codage!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.