Ich habe eine Schnur, 12345.00
und ich möchte, dass sie zurückkehrt. 12345.0
.
Ich habe mir angesehen trim
aber es sieht so aus, als würde es nur Leerzeichen und slice
Ich wüsste nicht, wie das funktionieren sollte. Irgendwelche Vorschläge?
Ich habe eine Schnur, 12345.00
und ich möchte, dass sie zurückkehrt. 12345.0
.
Ich habe mir angesehen trim
aber es sieht so aus, als würde es nur Leerzeichen und slice
Ich wüsste nicht, wie das funktionieren sollte. Irgendwelche Vorschläge?
Wenn Sie eine allgemeine Rundung von Floats vornehmen möchten, anstatt nur das letzte Zeichen abzuschneiden:
var float1 = 12345.00,
float2 = 12345.4567,
float3 = 12345.982;
var MoreMath = {
/**
* Rounds a value to the specified number of decimals
* @param float value The value to be rounded
* @param int nrDecimals The number of decimals to round value to
* @return float value rounded to nrDecimals decimals
*/
round: function (value, nrDecimals) {
var x = nrDecimals > 0 ? 10 * parseInt(nrDecimals, 10) : 1;
return Math.round(value * x) / x;
}
}
MoreMath.round(float1, 1) => 12345.0
MoreMath.round(float2, 1) => 12345.5
MoreMath.round(float3, 1) => 12346.0
EDIT : Wie Paolo feststellt, scheint es dafür eine eingebaute Funktion zu geben. Diese Lösung ist natürlich viel sauberer als meine. Verwenden Sie parseFloat gefolgt von toFixed
In Fällen, in denen Sie etwas entfernen möchten, das sich nahe am Ende einer Zeichenkette befindet (im Falle von Zeichenketten variabler Größe), können Sie slice() und substr() kombinieren.
Ich hatte eine Zeichenkette mit dynamisch erstelltem Markup mit einer durch Komma getrennten Liste von Anker-Tags. Die Zeichenfolge war etwas wie:
var str = "<a>text 1,</a><a>text 2,</a><a>text 2.3,</a><a>text abc,</a>";
Um das letzte Komma zu entfernen, bin ich wie folgt vorgegangen:
str = str.slice(0, -5) + str.substr(-4);
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.
10 Stimmen
Wissen Sie, wie das Suffix lautet, oder wollen Sie das letzte Wort anhand der Unterstriche trennen und entfernen?
42 Stimmen
Ist Ihnen das Runden wichtig? 12345,46 = 12345,5 oder 12345,4?