JavaScript Math.ceil Methode
Die Mathematik -Methode wird verwendet, um den numerischen Wert abzurunden, dh die kleinste Ganzzahl, die größer oder gleich dem numerischen Wert ist. Die Syntax ist wie folgt:
Math.ceil (x)
Parameterbeschreibung:
| Parameter | veranschaulichen |
|---|---|
| X | Erforderlich. Muss ein numerischer Wert sein. |
Tipp: Diese Methode ist genau das Gegenteil der mathematischen Floor -Methode.
Beispiel für Math.Ceil -Methode
<script Language = "javaScript"> document.write (math.ceil (0.35) + "<br />"); document.write (math.ceil (10) + "<br />"); document.write (math.ceil (-10) + "<br />"); document.write (math.ceil (-10.1); < />; < />; < />;
Führen Sie dieses Beispiel und Ausgabe aus:
1
10
-10
-10
Fehler in der Mathematik -Methode?
Versuchen Sie, das folgende Beispiel auszuführen:
<script Language = "javaScript"> document.write (math.ceil (2.1/0,7)); </script> Das Ergebnis des Ausführens dieses Beispiels ist nicht, 3 zu erhalten, wie wir es erwartet hatten (2,1/0,7 = 3), aber 4. Dies steht offensichtlich zu unserem gesunden Menschenverstand. Ist es ein Fehler in der Mathematik -Methode?
Die reale Situation ist, dass sie bei der Durchführung von 2,1/0,7 -Berechnungen nach schwimmenden Punktzahlen verarbeitet werden. Aufgrund binärer Beziehungen ist es unmöglich, dass Computer für Gleitkomma-Zahlen vollständig genau sind (dh normalerweise ein wenig Fortschritt), sodass das Berechnungsergebnis von 2,1/0,7 nicht genau gleich 3 ist, sondern 3 ein wenig überschreitet (ungefähr: 3.000000000000044409). Nachdem der Ausdruck auf Mathematik angewendet wurde. Ceil (), ist das Ergebnis 4.
In Bezug auf das Problem der ungenauen CEIL -Funktion wurde es auch in dem Artikel "Lösungen zum Vergleich und ungenauer Rundung des PHP -Gleitkomma -Vergleichs und der Rundung ungenaue Lösungen" erwähnt, die in PHP die rund () -Funktion leicht verarbeitet werden können. Math.Round () in JavaScript ist jedoch zu rau, daher muss eine Funktion separat geschrieben werden, um mit dieser Art von Situation umzugehen, dh alle überschüssigen Werte nach 1 Dezimalpunkt werden entfernt und die mathematische () -Methode wird verwendet.