529 Stimmen

Wie zu parsen Float mit zwei Dezimalstellen in Javascript?

Ich habe den folgenden Code. Ich möchte, dass wenn price_result gleich einer ganzen Zahl ist, sagen wir 10, dann möchte ich zwei Dezimalstellen hinzufügen. Also wäre 10 gleich 10,00. Oder wenn es gleich 10,6 ist, wäre es 10,60. Ich bin mir nicht sicher, wie ich das machen soll.

price_result = parseFloat(test_var.split('$')[1].slice(0,-1));

7voto

Rizwan Punkte 3037

Sie können .toFixed() für Float-Werte mit 2 Ziffern verwenden

Exampale

let newValue = parseFloat(9.990000).toFixed(2)

//output
9.99

7voto

Antonio Terreno Punkte 2405

Die Decke von lodash ist wahrscheinlich die beste

_.ceil("315.9250488",2) 
_.ceil(315.9250488,2) 
_.ceil(undefined,2)
_.ceil(null,2)
_.ceil("",2)

funktioniert auch mit einer Nummer, und es ist sicher

2voto

Habib_95 Punkte 41

Ich habe das in meinem Fall ausprobiert und es funktioniert gut.

var multiplied_value = parseFloat(given_quantity*given_price).toFixed(3);

Beispielhafte Ausgabe:

9.007

1voto

Nimesh Punkte 3044

Bitte verwenden Sie die folgende Funktion, wenn Sie nicht abrunden möchten.

function ConvertToDecimal(num) {
    num = num.toString(); //If it's not already a String
    num = num.slice(0, (num.indexOf(".")) + 3); //With 3 exposing the hundredths place
   alert('M : ' +  Number(num)); //If you need it back as a Number    
}

0voto

andora Punkte 1306

Was auch immer es wert ist: Eine Dezimalzahl ist eine Dezimalzahl, entweder man rundet sie auf einen anderen Wert oder nicht. Intern wird ein Dezimalbruch nach den Regeln der Fließkommaarithmetik und -verarbeitung approximiert. Sie bleibt intern eine Dezimalzahl (Fließkommazahl, in JS ein Double), egal mit wie vielen Stellen Sie sie anzeigen wollen.

Für die Darstellung können Sie die Genauigkeit der Anzeige durch eine Stringkonvertierung beliebig wählen. Die Darstellung ist eine Frage der Anzeige, nicht der Speicherung.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X