Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kürze ich Zahlen in JavaScript auf zwei Dezimalstellen, ohne sie zu runden?

Barbara Streisand
Freigeben: 2024-11-10 05:44:02
Original
963 Leute haben es durchsucht

How to Truncate Numbers to Two Decimal Places Without Rounding in JavaScript?

Zahlen ohne Rundung auf zwei Dezimalstellen kürzen

Bei der Arbeit mit Zahlen in JavaScript ist es oft notwendig, diese mit einer bestimmten Anzahl von anzuzeigen Dezimalstellen. Die toFixed()-Methode kann verwendet werden, um Zahlen auf eine bestimmte Anzahl von Dezimalstellen zu runden. Was aber, wenn Sie die Zahl ohne Rundung abschneiden müssen?

Betrachten Sie das folgende Beispiel:

var num = parseFloat(15.7784514);
document.write(num.toFixed(1) + "<br />");
document.write(num.toFixed(2) + "<br />");
document.write(num.toFixed(3) + "<br />");
document.write(num.toFixed(10));
Nach dem Login kopieren

Dieser Code führt zur folgenden Ausgabe:

15.8
15.78
15.778
15.7784514000
Nach dem Login kopieren

Wie Sie sehen können, rundet die toFixed()-Methode die Zahl auf den angegebenen Wert Anzahl der Dezimalstellen. Um die Zahl stattdessen abzuschneiden, können wir sie in eine Zeichenfolge umwandeln und einen regulären Ausdruck verwenden, um die Zahl bis zur zweiten Dezimalstelle abzugleichen:

function calc(theform) {
  var num = theform.original.value, rounded = theform.rounded
  var with2Decimals = num.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0]
  rounded.value = with2Decimals
}
Nach dem Login kopieren

Dieser Code wandelt die ursprüngliche Zahl in eine Zeichenfolge um und dann den regulären Ausdruck ^-?d (?:.d{0,2}) verwendet? um die Zahl bis zur zweiten Dezimalstelle abzugleichen. Die resultierende Zeichenfolge wird dann dem gerundeten Element im Formular zugewiesen.

Bei diesem Ansatz wird die Zahl ohne Rundung auf zwei Dezimalstellen gekürzt. Wenn die ursprüngliche Zahl beispielsweise 15,7784514 ist, lautet der gekürzte Wert 15,77.

Das obige ist der detaillierte Inhalt vonWie kürze ich Zahlen in JavaScript auf zwei Dezimalstellen, ohne sie zu runden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage