diff options
| author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
|---|---|---|
| committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
| commit | 074785cea106179cb3305637055ab0a009ca74f2 (patch) | |
| tree | e6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/javascript/reference/global_objects/math/trunc | |
| parent | da78a9e329e272dedb2400b79a3bdeebff387d47 (diff) | |
| download | translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2 translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip | |
initial commit
Diffstat (limited to 'files/ru/web/javascript/reference/global_objects/math/trunc')
| -rw-r--r-- | files/ru/web/javascript/reference/global_objects/math/trunc/index.html | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/files/ru/web/javascript/reference/global_objects/math/trunc/index.html b/files/ru/web/javascript/reference/global_objects/math/trunc/index.html new file mode 100644 index 0000000000..6e7b44147b --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/math/trunc/index.html @@ -0,0 +1,137 @@ +--- +title: Math.trunc() +slug: Web/JavaScript/Reference/Global_Objects/Math/trunc +tags: + - ECMAScript6 + - Experimental + - JavaScript + - Math + - Method + - Reference + - Функция + - целая часть +translation_of: Web/JavaScript/Reference/Global_Objects/Math/trunc +--- +<div> +<div>{{JSRef}}</div> + +<p>Функция <strong><code>Math.trunc()</code></strong> возвращает целую часть числа путём удаления всех дробных знаков.</p> + +<div>{{EmbedInteractiveExample("pages/js/math-trunc.html")}}</div> + + +</div> + +<p> + </p><h2 id="Syntax" name="Syntax">Синтаксис</h2> +<p></p> + +<pre class="syntaxbox"><code>Math.trunc(<var>x</var>)</code></pre> + +<h3 id="Parameters" name="Parameters">Параметры</h3> + +<dl> + <dt><code>x</code></dt> + <dd>Число.</dd> +</dl> + +<h3 id="Parameters" name="Parameters">Возвращаемое значение</h3> + +<dl> + <dt><code>x</code></dt> + <dd>Целая часть данного числа.</dd> +</dl> + +<h2 id="Description" name="Description">Описание</h2> + +<p>В отличие от других трёх методов объекта <code>Math</code> — {{jsxref("Math.floor()")}}, {{jsxref("Math.ceil()")}} и {{jsxref("Math.round()")}} — метод <code>Math.trunc()</code> работает очень просто. Отбрасывается запятая и все цифры после неё, не обращая внимания на знак аргумента.</p> + +<p>Аргумент, переданный в этот метод, будет неявно преобразован в число.</p> + +<p>Поскольку <code>trunc()</code> является статическим методом объекта <code>Math</code>, вы всегда должны использовать его как <code>Math.trunc()</code>, а не пытаться вызывать метод на созданном экземпляре объекта <code>Math</code> ( <code>Math</code> не является конструктором).</p> + +<h2 id="Examples" name="Examples">Примеры</h2> + +<h3 id="Example:_Using_Math.trunc" name="Example:_Using_Math.trunc">Использование <code>Math.trunc()</code></h3> + +<pre class="brush: js">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 +</pre> + +<h2 id="Polyfill" name="Polyfill">Полифилл</h2> + +<pre class="brush: js">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); + + // returns: + // 0 -> 0 + // -0 -> -0 + // 0.2 -> 0 + // -0.2 -> -0 + // 0.7 -> 0 + // -0.7 -> -0 + // Infinity -> Infinity + // -Infinity -> -Infinity + // NaN -> NaN + // null -> 0 + }; +} +</pre> + +<p>Либо:</p> + +<pre class="brush: js">if (!Math.trunc) { + Math.trunc = function(v) { + v = +v; + return (v - v % 1) || (!isFinite(v) || v === 0 ? v : v < 0 ? -0 : 0); + }; +} +</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Статус</th> + <th scope="col">Комментарий</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-math.trunc', 'Math.trunc')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Первое определение</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-math.trunc', 'Math.trunc')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Поддержка_браузерами">Поддержка браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("javascript.builtins.Math.trunc")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{jsxref("Math.abs()")}}</li> + <li>{{jsxref("Math.ceil()")}}</li> + <li>{{jsxref("Math.floor()")}}</li> + <li>{{jsxref("Math.round()")}}</li> + <li>{{jsxref("Math.sign()")}}</li> +</ul> |
