Was ist der beste Weg, um die "0" XXX% von einer Zahl zu entfernen und sie zu einem Prozentsatz zu machen? Was passiert, wenn die Nummer ein Int ist?
var number1 = 4.954848;
var number2 = 5.9797;
$(document).ready(function() {
final = number1/number2;
alert(final.toFixed(2) + "%");
});
javascript
math
user1040259
quelle
quelle
Math.floor
? Und nichtMath.round
? Auch in Ihrem Beispiel4.954848 / 5.9797
ist näher an83%
als an82%
Ihren Code-Ausgaben.~~
ist viel weniger lesbar alsMath.floor
quelle
Die beste Lösung, wo
en
ist das englische Gebietsschema:fraction.toLocaleString("en", {style: "percent"})
quelle
fraction.toLocaleString("en", { style: "percent", minimumFractionDigits: 2 })
Siehe stackoverflow.com/a/29773435/411428Wenn Sie eine solche Zahl haben
0.123456
, die das Ergebnis einer Division ist, um einen Prozentsatz zu erhalten, multiplizieren Sie sie mit 100 und runden Sie sie dann entweder ab oder verwenden Sie sietoFixed
wie in Ihrem Beispiel.Hier ist ein jQuery-Plugin, um das zu tun:
Verwendung:
quelle
jQuery.round
undjQuery.divide
undjQuery.multiply
Numeral.js ist eine von mir erstellte Bibliothek, die Zahlen, Währungen und Prozentsätze formatieren kann und die Lokalisierung unterstützt.
numeral(0.7523).format('0%') // returns string "75%"
numeral.js
quelle
numeral.js
war der 27. März 2017. Entweder ist die Bibliothek perfekt (keine Mängel) oder sie wird nicht mehr aktiv gepflegt. Ab dem 28. Januar 2019 hat das Projekt 135 offene Ausgaben, wobei die älteste aus dem November 2012 stammt. Die Anzahl der offenen Ausgaben ohne Verpflichtung in fast zwei Jahren lässt darauf schließen, dass das Projekt nicht mehr betreut wird. Freut mich, anders überzeugt zu sein.var Prozent = Math.floor (100 * Nummer1 / Nummer2 - 100) + '%';
quelle
Die meisten Antworten schlagen vor, am Ende '%' anzuhängen. Ich würde lieber
Intl.NumberFormat()
mit{ style: 'percent'}
quelle
Die Antwort von @ xtrem ist gut, aber ich denke, die
toFixed
und diemakePercentage
sind allgemein gebräuchlich. Definieren Sie zwei Funktionen, die wir überall verwenden können.quelle