[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc [Back]  [Original]

Math.trunc() - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Math.trunc()

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.

Die statische Methode Math.trunc() gibt den Ganzzahlanteil einer Zahl zurck, indem alle Nachkommastellen entfernt werden.

In diesem Artikel

Probieren Sie es aus

console.log(Math.trunc(13.37));
// Expected output: 13

console.log(Math.trunc(42.84));
// Expected output: 42

console.log(Math.trunc(0.123));
// Expected output: 0

console.log(Math.trunc(-0.123));
// Expected output: -0

Syntax

js
Math.trunc(x)

Parameter

x

Eine Zahl.

Rckgabewert

Der Ganzzahlanteil von x.

Beschreibung

Die Funktionsweise von Math.trunc() ist einfacher als die der anderen drei Math-Methoden: Math.floor(), Math.ceil() und Math.round(); sie krzt ab (schneidet den Punkt und die Ziffern rechts davon ab), unabhngig davon, ob das Argument eine positive oder negative Zahl ist.

Da trunc() eine statische Methode von Math ist, verwenden Sie sie immer als Math.trunc(), anstatt als Methode eines von Ihnen erstellten Math-Objekts (Math ist kein Konstruktor).

Beispiele

Verwendung von Math.trunc()

js
Math.trunc(-Infinity); // -Infinity
Math.trunc("-1.123"); // -1
Math.trunc(-0.123); // -0
Math.trunc(-0); // -0
Math.trunc(0); // 0
Math.trunc(0.123); // 0
Math.trunc(13.37); // 13
Math.trunc(42.84); // 42
Math.trunc(Infinity); // Infinity

Verwendung von bitweise No-Ops zum Krzen von Zahlen

Warnung: Dies ist aufgrund nicht vernachlssigbarer Randflle kein Polyfill fr Math.trunc().

Bitweise Operationen konvertieren ihre Operanden in 32-Bit-Ganzzahlen, was historisch genutzt wurde, um Gleitkommazahlen zu krzen. Zu den gngigen Techniken gehren:

js
const original = 3.14;
const truncated1 = ~~original; // Double negation
const truncated2 = original & -1; // Bitwise AND with -1
const truncated3 = original | 0; // Bitwise OR with 0
const truncated4 = original ^ 0; // Bitwise XOR with 0
const truncated5 = original >> 0; // Bitwise shifting by 0

Seien Sie sich bewusst, dass dies im Wesentlichen toInt32 ist, was nicht dasselbe wie Math.trunc ist. Wenn der Wert die Bedingung -231 - 1 < value < 231 (-2147483649 < value < 2147483648) nicht erfllt, wrde die Umwandlung berlaufen.

js
const a = ~~2147483648; // -2147483648
const b = ~~-2147483649; // 2147483647
const c = ~~4294967296; // 0

Verwenden Sie ~~ nur als Ersatz fr Math.trunc(), wenn Sie sicher sind, dass der Eingabebereich innerhalb des Bereichs der 32-Bit-Ganzzahlen liegt.

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-math.trunc

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page