--- title: Math.trunc() slug: Web/JavaScript/Reference/Global_Objects/Math/trunc tags: - ECMAScript 2015 - JavaScript - Math - Довідка - метод translation_of: Web/JavaScript/Reference/Global_Objects/Math/trunc ---
Функція Math.trunc()
повертає цілу частину числа, повністю відкидаючи дробову.
Джерело цих інтерактивних прикладів зберігається у репозиторії на GitHub. Якщо ви маєте бажання зробити свій внесок у проект інтерактивних прикладів - будь ласка, зклонуйте репозиторій https://github.com/mdn/interactive-examples та пришліть нам pull request.
Math.trunc(x)
x
Ціла частина даного числа.
На відміну від трьох інших методів Math
({{jsxref("Math.floor()")}}, {{jsxref("Math.ceil()")}} та {{jsxref("Math.round()")}}), принцип роботи Math.trunc()
дуже простий. Функція просто відкидає кому (крапку) та всі цифри правої частини, не зважаючи на те, являється аргумент додатнім, чи від'ємним.
Аргумент, поданий на вхід цієї функції, буде неявно приведений до чисельного типу.
У зв'язку з тим, що trunc()
- це статичний метод Math
, слід завжди викликати його як Math.trunc()
, аніж як метод створеного вами об'єкту Math
(оскільки Math
не являється конструктором).
Math.trunc()
Math.trunc(13.37); // 13 Math.trunc(42.84); // 42 Math.trunc(0.123); // 0 Math.trunc(-0.123); // -0 Math.trunc('-1.123'); // -1 Math.trunc(NaN); // NaN Math.trunc('foo'); // NaN Math.trunc(); // NaN
if (!Math.trunc) { Math.trunc = function(v) { v = +v; if (!isFinite(v)) return v; return (v - v % 1) || (v < 0 ? -0 : v === 0 ? v : 0); // повертає: // 0 -> 0 // -0 -> -0 // 0.2 -> 0 // -0.2 -> -0 // 0.7 -> 0 // -0.7 -> -0 // Infinity -> Infinity // -Infinity -> -Infinity // NaN -> NaN // null -> 0 }; }
чи:
if (!Math.trunc) { Math.trunc = function(v) { v = +v; return (v - v % 1) || (!isFinite(v) || v === 0 ? v : v < 0 ? -0 : 0); }; }
Специфікація | Статус | Примітка |
---|---|---|
{{SpecName('ES2015', '#sec-math.trunc', 'Math.trunc')}} | {{Spec2('ES2015')}} | Первинне визначення. |
{{SpecName('ESDraft', '#sec-math.trunc', 'Math.trunc')}} | {{Spec2('ESDraft')}} |
Таблиця сумісності на цій сторінці сформована автоматично із структурованих даних. Якщо ви маєте бажання зробити свій внесок до цих даних - будь-ласка, ось репозиторій https://github.com/mdn/browser-compat-data, надішліть нам свій pull request.
{{Compat("javascript.builtins.Math.trunc")}}