aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/javascript/reference/operators/arithmetic_operators
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
commitc058fa0fb22dc40ef0225b21a97578cddd0aaffa (patch)
treedf20f8b4c724b61cb9c34cdb450a7ac77d690bd0 /files/ru/web/javascript/reference/operators/arithmetic_operators
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.gz
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.bz2
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.zip
unslug ru: move
Diffstat (limited to 'files/ru/web/javascript/reference/operators/arithmetic_operators')
-rw-r--r--files/ru/web/javascript/reference/operators/arithmetic_operators/index.html291
1 files changed, 0 insertions, 291 deletions
diff --git a/files/ru/web/javascript/reference/operators/arithmetic_operators/index.html b/files/ru/web/javascript/reference/operators/arithmetic_operators/index.html
deleted file mode 100644
index f1091e3706..0000000000
--- a/files/ru/web/javascript/reference/operators/arithmetic_operators/index.html
+++ /dev/null
@@ -1,291 +0,0 @@
----
-title: Арифметические операции
-slug: Web/JavaScript/Reference/Operators/Arithmetic_Operators
-tags:
- - JavaScript
- - Операторы
-translation_of: Web/JavaScript/Reference/Operators
-translation_of_original: Web/JavaScript/Reference/Operators/Arithmetic_Operators
----
-<div>
-<div>{{jsSidebar("Operators")}}</div>
-</div>
-
-<p><strong>Арифметические операции</strong> принимают в качестве операндов числовые значения (это может быть и литерал и переменная) и возвращают результат в виде одного числового значения. Стандартными арифметическими операциями являются сложение (<code>+</code>), вычитание (<code>-</code>), умножение (<code>*</code>) и деление (<code>/</code>).</p>
-
-<h2 id="Сложение"><a name="Addition">Сложение (+)</a></h2>
-
-<p>Оператор сложения возвращает сумму числовых операндов или объединяет строки.</p>
-
-<h3 id="Syntax" name="Syntax">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x + y
-</pre>
-
-<h3 id="Examples" name="Examples">Примеры</h3>
-
-<pre class="brush: js">// Number + Number -&gt; сложение
-1 + 2 // 3
-
-// Boolean + Number -&gt; сложение
-true + 1 // 2
-
-// Boolean + Boolean -&gt; сложение
-false + false // 0
-
-// Number + String -&gt; конкатенация
-5 + "foo" // "5foo"
-
-// String + Boolean -&gt; конкатенация
-"foo" + false // "foofalse"
-
-// String + String -&gt; конкатенация
-"foo" + "bar" // "foobar"
-</pre>
-
-<h2 id="Вычитание_-"><a name="Subtraction">Вычитание (-)</a></h2>
-
-<p>Оператор вычитания вычитает один операнд из другого и возвращает разницу.</p>
-
-<h3 id="Syntax_2" name="Syntax_2">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x - y
-</pre>
-
-<h3 id="Examples_2" name="Examples_2">Примеры</h3>
-
-<pre class="brush: js">5 - 3 // 2
-3 - 5 // -2
-"foo" - 3 // NaN</pre>
-
-<h2 id="Деление"><a name="Division">Деление (/)</a></h2>
-
-<p>Оператор деления производит деление его операндов, где левый операнд - делимый, а правый - делитель.</p>
-
-<h3 id="Syntax_3" name="Syntax_3">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x / y
-</pre>
-
-<h3 id="Examples_3" name="Examples_3">Примеры</h3>
-
-<pre class="brush: js">1 / 2 // возвращает 0.5 в JavaScript
-1 / 2 // возвращает 0 в Java
-// (так числа не с плавающими точками)
-
-1.0 / 2.0 // возвращает 0.5 и в JavaScript и в Java
-
-2.0 / 0 // возвращает Infinity в JavaScript
-2.0 / 0.0 // тоже возвращает Infinity
-2.0 / -0.0 // возвращает -Infinity в JavaScript</pre>
-
-<h2 id="Умножение_*"><a name="Multiplication">Умножение (*)</a></h2>
-
-<p>Оператор умножения возвращает произведение операндов.</p>
-
-<h3 id="Syntax_4" name="Syntax_4">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x * y
-</pre>
-
-<h3 id="Examples_4" name="Examples_4">Примеры</h3>
-
-<pre class="brush: js">2 * 2 // 4
--2 * 2 // -4
-Infinity * 0 // NaN
-Infinity * Infinity // Infinity
-"foo" * 2 // NaN
-</pre>
-
-<h2 id="Остаток_от_деления"><a name="Remainder">Остаток от деления (%)</a></h2>
-
-<p>Оператор возвращает целый остаток от деления левого операнда на правый. Возвращаемое значение всегда получает знак делимого, а не делителя.  Он использует встроенную функцию <code>modulo</code>, для получения результата, которая является целочисленным остатком деления <code>var1</code> на <code>var2</code> — например— <code>var1</code> modulo <code>var2</code>. <a href="http://wiki.ecmascript.org/doku.php?id=strawman:modulo_operator" title="http://wiki.ecmascript.org/doku.php?id=strawman:modulo_operator">Есть предложение добавить оператор modulo в будущие версии ECMAScript</a>, с той разницей, что оператор будет брать знак делителя, а не делимого.</p>
-
-<h3 id="Syntax_5" name="Syntax_5">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> var1 % var2
-</pre>
-
-<h3 id="Examples_5" name="Examples_5">Примеры</h3>
-
-<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="number token">12</span> <span class="operator token">%</span> <span class="number token">5</span> <span class="comment token">// 2</span>
-<span class="operator token">-</span><span class="number token">1</span> <span class="operator token">%</span> <span class="number token">2</span> <span class="comment token">// -1</span>
-<span class="number token">NaN</span> <span class="operator token">%</span> <span class="number token">2</span> <span class="comment token">// NaN</span>
-<span class="number token">1</span> <span class="operator token">%</span> <span class="number token">2</span> <span class="comment token">// 1</span>
-<span class="number token">2</span> <span class="operator token">%</span> <span class="number token">3</span> <span class="comment token">// 2</span>
-<span class="operator token">-</span><span class="number token">4</span> <span class="operator token">%</span> <span class="number token">2</span> <span class="comment token">// -0</span>
-<span class="number token">5.5</span> <span class="operator token">%</span> <span class="number token">2</span> <span class="comment token">// 1.5</span></code></pre>
-
-<h2 id="Возведение_в_степень_**"><a name="Exponentiation">Возведение в степень (**)</a></h2>
-
-<p>Оператор возведения в степень возвращает результат первого операнда в степень. это, <code>var1</code><sup><code>var2</code></sup>, в предыдущем выражении, где <code>var1</code> и <code>var2</code> - переменные. Он право ассоциативен. <code>a ** b ** c</code> равно <code>a ** (b ** c)</code>.</p>
-
-<h3 id="Синтаксис">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> var1 ** var2</pre>
-
-<h3 id="Замечания">Замечания</h3>
-
-<p>Во многих языках, таких как PHP и Python и других, есть оператор возведения возведения в степень (обычно ^ или **), оператор определён имеющим приоритет выше, чем у унарных операторов, таких как унарный + и унарный -, но есть несколько исключений. Например, в Bash оператор ** создан имеющим приоритет ниже, чем у унарных операторов. В JavaScript невозможно написать двухсмысленное выражение, т.е. вы не можете ставить унарный оператор (<code>+/-/~/!/delete/void/typeof</code>) непосредственно перед базовым числом.</p>
-
-<pre class="brush: js">-2 ** 2;
-// 4 в Bash, -4 в других языках.
-// Это некорректно в JavaScript, т.е. операция двухсмыслена.
-
-
--(2 ** 2);
-// -4 в JavaScript, намерения автора однозначны.</pre>
-
-<h3 id="Примеры">Примеры</h3>
-
-<pre class="brush: js">2 ** 3 // 8
-3 ** 2 // 9
-3 ** 2.5 // 15.588457268119896
-10 ** -1 // 0.1
-NaN ** 2 // NaN
-
-2 ** 3 ** 2 // 512
-2 ** (3 ** 2) // 512
-(2 ** 3) ** 2 // 64</pre>
-
-<p>Изменим знак результата возведения в степень:</p>
-
-<pre class="brush: js">-(2 ** 2) // -4</pre>
-
-<p>Насильная установка основания как отрицательного числа:</p>
-
-<pre class="brush: js">(-2) ** 2 // 4</pre>
-
-<h2 id="Инкремент"><a name="Increment">Инкремент (++)</a></h2>
-
-<p>Оператор инкремента увеличивает на единицу(инкрементирует) операнд и возвращает значение.</p>
-
-<ul>
- <li>Если операция используется как постфикс, с оператором после операнда (например, x++), значение операнда возвращается, а затем увеличивается на единицу.</li>
- <li>Если используется префиксная форма с оператором перед операндом (например, ++x), значение операнда возвращается увеличенным на единицу.</li>
-</ul>
-
-<h3 id="Syntax_6" name="Syntax_6">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> x++ или ++x
-</pre>
-
-<h3 id="Examples_6" name="Examples_6">Примеры</h3>
-
-<pre class="brush: js">// Постфиксный
-var x = 3;
-y = x++; // y = 3, x = 4
-
-// Префиксный
-var a = 2;
-b = ++a; // a = 3, b = 3
-</pre>
-
-<h2 id="sect1"></h2>
-
-<h2 id="Декремент_--"><a name="Decrement">Декремент (--)</a></h2>
-
-<p>Операция декремента уменьшает на 1 (отнимает единицу) свой операнд и возвращает значение.</p>
-
-<ul>
- <li>Если операция используется как постфикс (например, x--), значение операнда возвращается, а затем уменьшается на единицу.</li>
- <li>Если используется префиксная форма (например, --x), значение операнда возвращается уменьшенным на единицу.</li>
-</ul>
-
-<h3 id="Syntax_7" name="Syntax_7">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> x-- или --x
-</pre>
-
-<h3 id="Examples_7" name="Examples_7">Примеры</h3>
-
-<pre class="brush: js">// Постфиксный
-var x = 3;
-y = x--; // y = 3, x = 2
-
-// Префиксный
-var a = 2;
-b = --a; // a = 1, b = 1
-</pre>
-
-<h2 id="Унарный_минус_-"><a name="Unary_negation">Унарный минус (-)</a></h2>
-
-<p>Унарный минус ставится перед своим операндом и возвращает его математическое отрицание.</p>
-
-<h3 id="Syntax_8" name="Syntax_8">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> -x
-</pre>
-
-<h3 id="Examples_8" name="Examples_8">Примеры</h3>
-
-<pre class="brush: js">var x = 3;
-y = -x; // y = -3, x = 3
-</pre>
-
-<h2 id="Унарный_плюс"><a name="Unary_plus">Унарный плюс</a> (+)</h2>
-
-<p>Оператор унарный плюс предшедствует своему операнду и оценивает его, пытается преобразовать его в число, если он им не является. Хотя, унарное отрицание (-) также конвертирует не числа, унарный плюс - быстрейший и предпочитаемый способ конвертирования чего-либо в число потому, что он не выполняет каких-либо операций с числом. Он может конвертировать строковые представления целых и чисел с плавающей точкой, а также нестроковые значения <code>true</code>, <code>false</code> и <code>null</code>. Поддерживаются числа в десятичном и шестнадцатиричном (с префиксом "0x") формате. Отрицательные числа тоже поддерживаются (но не 16-ричные). Если он не может вычислить конкретное значение, выполнится как <a href="/ru/docs/Web/JavaScript/Reference/Global_Objects/NaN">NaN</a>.</p>
-
-<h3 id="Syntax_9" name="Syntax_9">Синтаксис</h3>
-
-<pre class="syntaxbox"><strong>Оператор:</strong> +x
-</pre>
-
-<h3 id="Examples_9" name="Examples_9">Примеры</h3>
-
-<pre class="brush: js">+3 // 3
-+"3" // 3
-+true // 1
-+false // 0
-+null // 0
-</pre>
-
-<h2 id="Specifications" name="Specifications">Спецификации</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">Спецификация</th>
- <th scope="col">Статус</th>
- <th scope="col">Примечание</th>
- </tr>
- <tr>
- <td>{{SpecName('ES1')}}</td>
- <td>{{Spec2('ES1')}}</td>
- <td>Изначальное определение</td>
- </tr>
- <tr>
- <td>{{SpecName('ES5.1', '#sec-11.3')}}</td>
- <td>{{Spec2('ES5.1')}}</td>
- <td>Определено в нескольких секциях специфии: <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.6">Additive operators</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.5">Multiplicative operators</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.3">Postfix expressions</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.4">Unary operators</a>.</td>
- </tr>
- <tr>
- <td>{{SpecName('ES6', '#sec-postfix-expressions')}}</td>
- <td>{{Spec2('ES6')}}</td>
- <td>Определено в нескольких секциях специфии: <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-additive-operators">Additive operators</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-multiplicative-operators">Multiplicative operators</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-postfix-expressions">Postfix expressions</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-unary-operators">Unary operators</a>.</td>
- </tr>
- <tr>
- <td>{{SpecName('ES7', '#sec-postfix-expressions')}}</td>
- <td>{{Spec2('ES7')}}</td>
- <td>Добавлен <a href="https://github.com/rwaldron/exponentiation-operator">Оператор возведения в степень</a>.</td>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-postfix-expressions')}}</td>
- <td>{{Spec2('ESDraft')}}</td>
- <td></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Поддержка_браузерами">Поддержка браузерами</h2>
-
-
-
-<p>{{Compat("javascript.operators.arithmetic")}}</p>
-
-<h2 id="See_also" name="See_also">Смотрите также</h2>
-
-<ul>
- <li><a href="/ru/docs/Web/JavaScript/Reference/Operators/Assignment_Operators">Операторы присваивания</a></li>
-</ul>