Gibt es eine Möglichkeit, eine Zahl abzurunden, dh wenn es 2,3 und größer ist, sollte es als 2 bleiben, aber wenn größer als 2,9 sollte es auf 3 runden. Nicht sicher, wie ich sie machen würde arbeite mit Math.round, da dies immer zu 3 nach 2.4 kommt. Vielen Dank.Abgerundet auf mehr als 0,9 in Javascript
Antwort
Eine Möglichkeit ist, einen Versatz zu verschieben, um die Rundung „Pivot“ 0,5-0,9 hinzuzufügen. Wenn x
die Zahl dann abzurunden verwenden
Math.round(x - 0.4)
@Downvoter (s) werden: Brauche ich Kaffee? Welche Anforderung erfüllt das nicht? (Ich hatte einen Tippfehler im ersten Entwurf.) – Bathsheba
Dies ist die richtige Antwort, weiß nicht, warum es Downvoter (s) gibt. Es ist nicht notwendig, die benutzerdefinierte Rundungsfunktion zu verwenden, wie es in anderen Antworten gezeigt wird, aber es ist genug wie in Ihrer Antwort. – Legionar
Sie wissen bereits, dass Sie einen Tippfehler gemacht haben, der den Code nicht richtig funktioniert hat. Nachdem Sie den Tippfehler behoben haben, wurden die Downvotes umgekehrt. Das System funktioniert. – JJJ
Sie könnten eine Hilfsmethode wie haben unter
function Extended_Roundoff(num, decimal_threshold){
var decimal_part = num - Math.floor(num);
if(decimal_part >= decimal_threshold){
return Math.ceil(num);
}else{
return Math.floor(num);
}
}
console.log(Extended_Roundoff(2.3, 0.9));
console.log(Extended_Roundoff(2.95, 0.9));
nicht ganz erste Bedingung fangen: (?), Wenn es 2.3 ist und größer sollte es 2.
Rückkehr hier So Funktion ist , dass Runde Zahlen mit Bruch> 0,9
function customRound(number){
return (number-(~~number))>0.9 ? ~~number+1 : ~~number;
}
wenn es weniger als 2,9 ist, dann sollte es auf 2 runden und wenn 2,9 oder größer als das sollte es 3 werden. Danke – aditya063
was sollte 7,9 werden? –
Und warum downvotes? Arbeitsantwort ... –
function customRound(v) {
return Math.round(v-0.4);
};
wenn v großen weniger als x.9, i t kehrt x
customRound(2.1) // 2
customRound(2.8) // 2
customRound(2.89) // 2
else if v groß ist als x.9, es retuans x + 1
customRound(2.91) // 3
Und Sie können benutzerdefinierte der Offset wie Sie möchten.
UV'd. Im Wesentlichen meine Antwort, aber mit einigen Erklärungen. (Obwohl ich persönlich nicht in eine separate Funktion einbinden würde - für mich ist das Verhalten von 'Math.round (v - 0.4)' an der Aufrufseite deutlicher als 'customRound (v))' – Bathsheba
Dies wird 24 zurückkehren und wenn num wird, ist 23,6 23 zurückkehren
var num = 23.9;
var nr = num % Math.floor(num)
nr = Math.round(nr * 100)/100
if(nr >=0.9){
num = Math.floor(num+1);
}else{
num = Math.floor(num);
}
alert(num);
- 1. JavaScript: weniger als + mehr als
- 2. Typoskript 0,9: Modulfunktionen
- 3. auf Int Doppel abgerundet
- 4. Wie upgrade Tensorflow auf 0,9 statt 1.0?
- 5. von Remote-State Migration auf Backend in Terraforming 0,9
- 6. PHP-Zeit() immer auf die Sekunde abgerundet?
- 7. Javascript: Split mit mehr als einem Parameter
- 8. Versuchen Sie, JavaScript auf mehr als ein Bild anzuwenden?
- 9. Javascript Inkrement um mehr als 1?
- 10. Javascript Variable nicht mehr als 1
- 11. Wann würde JavaScript == mehr Sinn machen als ===?
- 12. Mehr als ein Komma mit JavaScript einschränken
- 13. JavaScript click() - nicht mehr arbeiten als einmal
- 14. Wie abgerundet in Swig Vorlage
- 15. Javascript - Object.create mehr als ein Prototyp
- 16. JavaScript, das mehr Zeit benötigt als erwartet
- 17. auf mehr als ein Anwendungsserver
- 18. Javascript: for..in Schleife läuft mehr Male als erwartet
- 19. mit Punktnotation mit mehr als einem in JavaScript-Syntax
- 20. Funktion zum Erhöhen/Dekrementieren mehr als Stepper in Javascript
- 21. Worker in JavaScript beenden, wenn mehr als eine angegebene Zeit
- 22. Array konnte nicht mehr als 7741 Elemente in JavaScript
- 23. Wie wird in Excel auf den nächsten Monat abgerundet?
- 24. Android Material Design abgerundet progress_bar
- 25. wie kann die nummer in einem bestimmten format abgerundet werden?
- 26. Hash-Code, der mehr als 16 Zeichen enthält?
- 27. Wie werden Datenrahmenspalten richtig abgerundet?
- 28. ImageView/Layout abgerundet zirkular in XML
- 29. Javascript Laden Sie mehr auf Bildlauf
- 30. Bildwähler mehr als eine
Größer als 2,9 oder größer oder größer oder gleich 2,9? Außerdem bezweifle ich, dass Math.round Runden 2,41 bis 3. – Bathsheba
Größer als 2,9 sollte zu 3 werden, aber wenn weniger als das sollte es 2 – aditya063
Sie können benutzerdefinierte Funktion, die diese Logik implementieren können und anstelle von Math.round können Sie machen rufe diese Funktion auf. Funktion customRound (a) {wenn (a * 10% 10> = 3 && a * 10% 10 <= 9) {return a - (a% 10); } else {return a + (10 - a% 10); }}; – g9m29