From c058fa0fb22dc40ef0225b21a97578cddd0aaffa Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:51:05 +0100 Subject: unslug ru: move --- .../operators/arithmetic_operators/index.html | 291 --------------------- 1 file changed, 291 deletions(-) delete mode 100644 files/ru/web/javascript/reference/operators/arithmetic_operators/index.html (limited to 'files/ru/web/javascript/reference/operators/arithmetic_operators') 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 ---- -
-
{{jsSidebar("Operators")}}
-
- -

Арифметические операции принимают в качестве операндов числовые значения (это может быть и литерал и переменная) и возвращают результат в виде одного числового значения. Стандартными арифметическими операциями являются сложение (+), вычитание (-), умножение (*) и деление (/).

- -

Сложение (+)

- -

Оператор сложения возвращает сумму числовых операндов или объединяет строки.

- -

Синтаксис

- -
Operator: x + y
-
- -

Примеры

- -
// Number + Number -> сложение
-1 + 2 // 3
-
-// Boolean + Number -> сложение
-true + 1 // 2
-
-// Boolean + Boolean -> сложение
-false + false // 0
-
-// Number + String -> конкатенация
-5 + "foo" // "5foo"
-
-// String + Boolean -> конкатенация
-"foo" + false // "foofalse"
-
-// String + String -> конкатенация
-"foo" + "bar" // "foobar"
-
- -

Вычитание (-)

- -

Оператор вычитания вычитает один операнд из другого и возвращает разницу.

- -

Синтаксис

- -
Operator: x - y
-
- -

Примеры

- -
5 - 3 // 2
-3 - 5 // -2
-"foo" - 3 // NaN
- -

Деление (/)

- -

Оператор деления производит деление его операндов, где левый операнд - делимый, а правый - делитель.

- -

Синтаксис

- -
Operator: x / y
-
- -

Примеры

- -
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
- -

Умножение (*)

- -

Оператор умножения возвращает произведение операндов.

- -

Синтаксис

- -
Operator: x * y
-
- -

Примеры

- -
2 * 2 // 4
--2 * 2 // -4
-Infinity * 0 // NaN
-Infinity * Infinity // Infinity
-"foo" * 2 // NaN
-
- -

Остаток от деления (%)

- -

Оператор возвращает целый остаток от деления левого операнда на правый. Возвращаемое значение всегда получает знак делимого, а не делителя.  Он использует встроенную функцию modulo, для получения результата, которая является целочисленным остатком деления var1 на var2 — например— var1 modulo var2Есть предложение добавить оператор modulo в будущие версии ECMAScript, с той разницей, что оператор будет брать знак делителя, а не делимого.

- -

Синтаксис

- -
Оператор: var1 % var2
-
- -

Примеры

- -
12 % 5 // 2
--1 % 2 // -1
-NaN % 2 // NaN
-1 % 2 // 1
-2 % 3 // 2
--4 % 2 // -0
-5.5 % 2 // 1.5
- -

Возведение в степень (**)

- -

Оператор возведения в степень возвращает результат первого операнда в степень. это, var1var2, в предыдущем выражении, где var1 и var2 - переменные. Он право ассоциативен. a ** b ** c равно a ** (b ** c).

- -

Синтаксис

- -
Оператор: var1 ** var2
- -

Замечания

- -

Во многих языках, таких как PHP и Python и других, есть оператор возведения возведения в степень (обычно ^ или **), оператор определён имеющим приоритет выше, чем у унарных операторов, таких как унарный + и унарный -, но есть несколько исключений. Например, в Bash оператор ** создан имеющим приоритет ниже, чем у унарных операторов. В JavaScript невозможно написать двухсмысленное выражение, т.е. вы не можете ставить унарный оператор (+/-/~/!/delete/void/typeof) непосредственно перед базовым числом.

- -
-2 ** 2;
-// 4 в Bash, -4 в других языках.
-// Это некорректно в JavaScript, т.е. операция двухсмыслена.
-
-
--(2 ** 2);
-// -4 в JavaScript, намерения автора однозначны.
- -

Примеры

- -
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
- -

Изменим знак результата возведения в степень:

- -
-(2 ** 2) // -4
- -

Насильная установка основания как отрицательного числа:

- -
(-2) ** 2 // 4
- -

Инкремент (++)

- -

Оператор инкремента увеличивает на единицу(инкрементирует) операнд и возвращает значение.

- - - -

Синтаксис

- -
Оператор: x++ или ++x
-
- -

Примеры

- -
// Постфиксный
-var x = 3;
-y = x++; // y = 3, x = 4
-
-// Префиксный
-var a = 2;
-b = ++a; // a = 3, b = 3
-
- -

- -

Декремент (--)

- -

Операция декремента уменьшает на 1 (отнимает единицу) свой операнд и возвращает значение.

- - - -

Синтаксис

- -
Оператор: x-- или --x
-
- -

Примеры

- -
// Постфиксный
-var x = 3;
-y = x--; // y = 3, x = 2
-
-// Префиксный
-var a = 2;
-b = --a; // a = 1, b = 1
-
- -

Унарный минус (-)

- -

Унарный минус ставится перед своим операндом и возвращает его математическое отрицание.

- -

Синтаксис

- -
Оператор: -x
-
- -

Примеры

- -
var x = 3;
-y = -x; // y = -3, x = 3
-
- -

Унарный плюс (+)

- -

Оператор унарный плюс предшедствует своему операнду и оценивает его, пытается преобразовать его в число, если он им не является. Хотя, унарное отрицание (-) также конвертирует не числа, унарный плюс - быстрейший и предпочитаемый способ конвертирования чего-либо в число потому, что он не выполняет каких-либо операций с числом. Он может конвертировать строковые представления целых и чисел с плавающей точкой, а также нестроковые значения true, false и null. Поддерживаются числа в десятичном и шестнадцатиричном (с префиксом "0x") формате. Отрицательные числа тоже поддерживаются (но не 16-ричные). Если он не может вычислить конкретное значение, выполнится как NaN.

- -

Синтаксис

- -
Оператор: +x
-
- -

Примеры

- -
+3     // 3
-+"3"   // 3
-+true  // 1
-+false // 0
-+null  // 0
-
- -

Спецификации

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
СпецификацияСтатусПримечание
{{SpecName('ES1')}}{{Spec2('ES1')}}Изначальное определение
{{SpecName('ES5.1', '#sec-11.3')}}{{Spec2('ES5.1')}}Определено в нескольких секциях специфии: Additive operators, Multiplicative operators, Postfix expressions, Unary operators.
{{SpecName('ES6', '#sec-postfix-expressions')}}{{Spec2('ES6')}}Определено в нескольких секциях специфии: Additive operators, Multiplicative operators, Postfix expressions, Unary operators.
{{SpecName('ES7', '#sec-postfix-expressions')}}{{Spec2('ES7')}}Добавлен Оператор возведения в степень.
{{SpecName('ESDraft', '#sec-postfix-expressions')}}{{Spec2('ESDraft')}}
- -

Поддержка браузерами

- - - -

{{Compat("javascript.operators.arithmetic")}}

- -

Смотрите также

- - -- cgit v1.2.3-54-g00ecf