ЛУЧШИЙ САЙТ ДЛЯ РАЗРАБОТЧИКОВ
×

JavaScript учебник

JS HOME JS Introduction JS Where To JS Output JS Statements JS Syntax JS Comments JS Variables JS Operators JS Arithmetic JS Assignment JS Data Types JS Functions JS Objects JS Scope JS Events JS Strings JS String Methods JS Numbers JS Number Methods JS Arrays JS Array Methods JS Array Sort JS Array Iteration JS Dates JS Date Formats JS Date Get Methods JS Date Set Methods JS Math JS Random JS Booleans JS Comparisons JS Conditions JS Switch JS Loop For JS Loop While JS Break JS Type Conversion JS Bitwise JS RegExp JS Errors JS Debugging JS Hoisting JS Strict Mode JS this Keyword JS Style Guide JS Best Practices JS Mistakes JS Performance JS Reserved Words JS Versions JS Version ES5 JS Version ES6 JS JSON

JS Forms

JS Forms Forms API

JS Objects

Object Definitions Object Properties Object Methods Object Constructors Object Prototypes

JS Functions

Function Definitions Function Parameters Function Invocation Function Call Function Apply Function Closures

JS HTML DOM

DOM Intro DOM Methods DOM Document DOM Elements DOM HTML DOM CSS DOM Animations DOM Events DOM Event Listener DOM Navigation DOM Nodes DOM Collections DOM Node Lists

JS Browser BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS AJAX

AJAX Intro AJAX XMLHttp AJAX Request AJAX Response AJAX XML File AJAX PHP AJAX ASP AJAX Database AJAX Applications

JS JSON

JSON Intro JSON Syntax JSON vs XML JSON Data Types JSON Objects JSON Arrays JSON Parse JSON Stringify JSON PHP JSON HTML JSON JSONP

JS References

JavaScript Objects HTML DOM Objects


JavaScript Арифметические


Арифметические операторы JavaScript

Арифметические операторы выполняют арифметические действия с числами (литералами или переменными).

Оператор Описание
+ Дополнение
- Вычитание
* Умножения
/ Отдел
% Модуль (остаток)
++ Увеличение
-- Уменьшения

Арифметические операции

Типичная арифметическая операция работает на двух числах.

Эти два числа могут быть литералами:

Пример

var x = 100 + 50;

или переменные:

Пример

var x = a + b;

или выражений:

Пример

var x = (100 + 50) * a;


Операторы и операнды

Числа (в арифметической операции) называются операндами.

Операция (выполняемая между двумя операндами) определяется оператором.

Operand Оператор Operand
100 + 50

Добавление

Оператор сложения (+) добавляет номера:

Пример

var x = 5;
var y = 2;
var z = x + y;

Вычитание

Оператор вычитания (-) вычитает числа.

Пример

var x = 5;
var y = 2;
var z = x - y;

Умножения

Оператор умножения (*) умножает числа.

Пример

var x = 5;
var y = 2;
var z = x * y;

Разделение

Оператор деления (/) делит числа.

Пример

var x = 5;
var y = 2;
var z = x / y;

Остаток

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

Пример

var x = 5;
var y = 2;
var z = x % y;

В арифметике деление двух целых чисел создает Коэффициент и остаток.
В математике результатом операции по модулю является оставшаяся часть арифметического деления.


Incrementing

The increment operator (++) increments numbers.

Пример

var x = 5;
x++;
var z = x;

Уменьшение

Оператор уменьшения (--) уменьшает число чисел.

Пример

var x = 5;
x--;
var z = x;

Приоритет оператора

Приоритет оператора описывает порядок выполнения операций в арифметическом выражении.

Пример

var x = 100 + 50 * 3;

Является результатом пример выше же, как 150 * 3, или это же, как 100 + 150?

Является ли дополнение или умножение сделано в первую очередь?

Как и в традиционной школьной математике, умножение делается в первую очередь.

Умножение (*) и деление (/) имеют более высокий приоритет , чем сложение (+) и вычитание (-).

И (как в школьной математике) приоритет может быть изменен с помощью скобок:

Пример

var x = (100 + 50) * 3;

При использовании скобок операции, находящиеся внутри скобок, рассчитываются первыми.

Когда многие операции имеют одинаковый приоритет (например, сложение и вычитание), они рассчитываются слева направо:

Пример

var x = 100 + 50 - 3;

Значения старшинства операторов JavaScript

Бледно-красные записи указывает ECMAScript 2015 (ES6) или выше.

Значение Оператор Описание Примере
20 ( ) Группирование выражений (3 + 4)
       
19 . Член person.name
19 [] Член person["name"]
19 () Вызов функции myFunction()
19 new Создать new Date()
       
17 ++ Приращение суффикса i++
17 -- Уменьшение суффикса i--
       
16 ++ Приращение префикса ++i
16 -- Уменьшение префикса --i
16 ! Логическое не !(x==y)
16 typeof Тип typeof x
       
15 ** В возведение (ес7) 10 ** 2
       
14 * Умножения 10 * 5
14 / Division 10 / 5
14 % Остаток дивизиона 10 % 5
       
13 + Дополнение 10 + 5
13 - Вычитание 10 - 5
       
12 << Сдвиг влево x <<2
12 >> Сдвиг вправо x>> 2
12 >>> Сдвиг вправо (неподписанный) x>>> 2
       
11 < Менее x <y 
11 <= Меньше или равно x <= y
11 > Больше x> y
11 >= Больше или равно x>= y
11 in Правильно в объекте "PI" in Math
11 instanceof Экземпляр объекта instanceof Array
       
10 == Равно x == y
10 === Строгий равный x === y
10 != Неравные x != y
10 !== Строгие неравные x !== y
       
9 & Побитовое и x & y
8 ^ Побитовое исключающее x ^ y
7 | Побитовое или x | y
6 && Логические и x && y
5 || Логические или x || y
4 ? : Состояние ? "Yes" : "No"
       
3 += Назначения x += y
3 += Назначения x += y
3 -= Назначения x -= y
3 *= Назначения x *= y
3 %= Назначения x %= y
3 <<= Назначения x <<= y
3 >>= Назначения x>>= y
3 >>>= Назначения x>>>= y
3 &= Назначения x &= y
3 ^= Назначения x ^= y
3 |= Назначения x |= y
       
2 yield Функция паузы yield x
1 , Запятой 5 , 6

Выражения в скобках полностью вычисляются до того, как значение используется в оставшейся части выражения.