Quelle est la meilleure façon de supprimer le “0”? XXX% de réduction sur un nombre et en faire un pourcentage? Que se passe-t-il si le numéro se trouve être un int?
var number1 = 4.954848; var number2 = 5.9797; $(document).ready(function() { final = number1/number2; alert(final.toFixed(2) + "%"); });
Un pourcentage est juste:
(number_one / number_two) * 100
Pas besoin de quoi que ce soit de fantaisie:
var number1 = 4.954848; var number2 = 5.9797; alert(Math.floor((number1 / number2) * 100)); //w00t!
((portion/total) * 100).toFixed(2) + '%'
La meilleure solution, où en
est la langue anglaise:
fraction.toLocaleSsortingng("en", {style: "percent"})
Eh bien, si vous avez un nombre comme 0.123456
qui est le résultat d’une division pour donner un pourcentage, multipliez-le par 100, puis arrondissez-le ou utilisez toFixed
comme dans votre exemple.
Math.round(0.123456 * 100) //12
Voici un plugin jQuery pour le faire:
jQuery.extend({ percentage: function(a, b) { return Math.round((a / b) * 100); } });
Usage:
alert($.percentage(6, 10));
Numeral.js est une bibliothèque que j’ai créée qui peut formater des nombres, des devises et des pourcentages et qui prend en charge la localisation.
numeral(0.7523).format('0%') // returns ssortingng "75%"
numeral.js
var percent = Math.floor (100 * nombre1 / nombre2 – 100) + ‘%’;
La réponse de @ xtrem est bonne, mais je pense que le toFixed
et le makePercentage
sont courants. Définir deux fonctions, et nous pouvons l’utiliser partout.
const R = require('ramda') const RA = require('ramda-adjunct') const fix = R.invoker(1, 'toFixed')(2) const makePercentage = R.when( RA.isNotNil, R.compose(R.flip(R.concat)('%'), fix, R.multiply(100)), ) let a = 0.9988 let b = null makePercentage(b) // -> null makePercentage(a) // -> 99.88%