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));
Dieser Code führt zur folgenden Ausgabe:
15.8 15.78 15.778 15.7784514000
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 }
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!