89 votes

javascript : calculer x% d'un nombre

Je me demande comment, en javascript, si l'on me donne un nombre (disons 10000) puis un pourcentage (disons 35,8%).

Comment puis-je calculer le montant (par exemple 3580) ?

177voto

alex Points 186293
var result = (35.8 / 100) * 10000;

(Merci jball pour ce changement d'ordre des opérations. Je ne l'ai pas envisagé).

11voto

jon doe Points 40

C'est ce que je ferais :

// num is your number
// amount is your percentage
function per(num, amount){
  return num*amount/100;
}

...
<html goes here>
...

alert(per(10000, 35.8));

8voto

Timothy Ruhle Points 1546

Votre pourcentage divisé par 100 (pour obtenir le pourcentage entre 0 et 1) multiplié par le nombre.

35.8/100*10000

7voto

eomeroff Points 1814

La meilleure chose à faire est de mémoriser l'équation d'équilibre de manière naturelle.

Amount / Whole = Percentage / 100

En général, il vous manque une variable, dans ce cas, c'est Montant

Amount / 10000 = 35.8 / 100

Ensuite, il faut faire des mathématiques de niveau secondaire (proportion) pour multiplier l'extérieur des deux côtés et l'intérieur des deux côtés.

Amount * 100 = 358 000

Amount = 3580

Il fonctionne de la même manière dans toutes les langues et sur le papier. JavaScript ne fait pas exception.

6voto

Arce Brito Points 2130

Si vous voulez passer le % dans le cadre de votre fonction, vous devez utiliser l'alternative suivante :

<script>
function fpercentStr(quantity, percentString)
{
    var percent = new Number(percentString.replace("%", ""));
    return fpercent(quantity, percent);
}

function fpercent(quantity, percent)
{
    return quantity * percent / 100;
}
document.write("test 1:  " + fpercent(10000, 35.873))
document.write("test 2:  " + fpercentStr(10000, "35.873%"))
</script>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X