Faire un chiffre un pourcentage

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%​​​​​