JS JavaScript Арифметические операторы
HTML5CSS.ruЛУЧШИЙ САЙТ ДЛЯ РАЗРАБОТЧИКОВ
❮ Назад Дальше ❯
Арифметические операторы 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 |
& | Побитовое и | 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 |
Выражения в скобках полностью вычисляются до того, как значение используется в оставшейся части выражения.
❮ Назад Дальше ❯
PHP\CSS\JS\HMTL Editor
Copyright 2018-2020 HTML5CSS.ru
Правила и Условия Политика конфиденциальности О нас Контакты
Арифметика в Javascript
Арифметические операторы используются для выполнения арифметических операций с числами (константами или переменными):
Оператор | Описание |
---|---|
+ | Сложение |
— | Вычитание |
* | Умножение |
/ | Деление |
% | Остаток от деления |
++ | Увеличение на 1 |
— | Уменьшение на 1 |
Арифметические операции
Типичная арифметическая операция осуществляется с двумя числами.
Этими числами могут быть константы:
var x = 100 + 50;
или переменные:
var x = a + b;
или выражения:
var x = (100 + 50) * a;
Операторы и операнды
Числа в арифметической операции называют операндами.
Операция, совершаемая между двумя операндами, называется оператор.
Операнд | Оператор | Операнд |
---|---|---|
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;
Оператор инкремента (++) увеличивает число на 1:
var x = 5; x++; var z = x;
Оператор декремента (—) уменьшает число на 1:
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:
Коэффициент | Оператор | Описание | Пример |
---|---|---|---|
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) |
15 | typeof | Тип | typeof x |
15 | ** | Возведение в степень | 10 ** 2 |
14 | * | Умножение | 10 * 5 |
14 | / | Деление | 10 / 18 |
14 | % | Деление по модулю | 10 % 5 |
13 | + | Сложение | 10 + 5 |
13 | — | Вычитание | 10 — 8 |
12 | << | Сдвиг влево | x << 2 |
12 | >> | Сдвиг вправо | x >> 2 |
12 | >>> | Сдвиг вправо (без знака) | x >>> 2 |
11 | < | Меньше чем | x < y |
11 | <= | Меньше или равно | x <= y |
11 | > | Больше чем | x > y |
11 | >= | Больше или равно | x >= y |
10 | == | Равенство | x == y |
10 | === | Строгое равенство | x === y |
10 | != | Неравенство | x != y |
10 | !== | Строгое неравенство | x !== y |
6 | && | Логическое И | x && y |
5 | || | Логическое ИЛИ | 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 |
3 | |= | Присваивание | x |= y |
Внимание! Выражения в круглых скобках полностью вычисляются до применения коэффициентов остальных выражений.
Проверьте свои навыки: Математика — изучите веб-разработку
Цель тестов на этой странице — оценить, поняли ли вы статью «Основы математики в JavaScript — числа и операторы».
Примечание: Если в вашем коде есть ошибка, она будет зарегистрирована в панели результатов на этой странице (или в консоли JavaScript браузера для загружаемой версии), чтобы помочь вам. Может быть полезно скопировать код в онлайн-инструмент, такой как CodePen, jsFiddle или Glitch, чтобы проверить свою работу. Если вы застряли, вы можете обратиться к нам за помощью.
Давайте начнем с проверки ваших знаний основных математических операторов. Вы создадите четыре числовых значения, сложите два вместе, вычтите одно из другого, а затем умножьте результаты. Наконец, нам нужно написать проверку, которая доказывает, что это значение является четным числом.
Попробуйте обновить текущий код ниже, чтобы воссоздать готовый пример, выполнив следующие действия:
- Создайте четыре переменные, содержащие числа. Назовите переменные как-то осмысленно.
- Сложите вместе первые две переменные и сохраните результат в другой переменной.
- Вычесть четвертую переменную из третьей и сохранить результат в другой переменной.
- Умножьте результаты шагов 2 и 3 и сохраните результат в переменной с именем
finalResult
. - Проверить, является ли
finalResult
четным числом, используя арифметический оператор, и сохранить результат в переменной с именемevenOddResult
.
Чтобы пройти этот тест, finalResult
должен иметь значение 48
и evenOddResult
должны иметь значение 0
.
Загрузите начальную версию этой задачи для работы в собственном редакторе или онлайн-редакторе.
Во втором задании вам предоставляется два расчета, результаты которых хранятся в переменных result
и result2
. Вам нужно взять расчеты, умножить их и отформатировать результат до двух знаков после запятой.
Попробуйте обновить текущий код ниже, чтобы воссоздать готовый пример, выполнив следующие действия:
- Умножьте результат
на результат
и результат2 на
и присвойте результат обратно результату - Отформатируйте результат
finalResult
. - Проверьте тип данных
finalResult
с помощьюtypeof
. Если это строка - Обновите исходный расчет, чтобы он дал вам значение
10,42
. Не меняйте номера или операторов.
Чтобы пройти этот тест, finalNumber
должен иметь результат 10,42
.
Загрузите начальную версию этой задачи для работы в собственном редакторе или онлайн-редакторе.
В заключительном задании этой статьи мы хотим, чтобы вы написали несколько тестов.
Есть три группы, каждая из которых состоит из оператора и двух переменных.
Для каждого из них напишите тест, подтверждающий или опровергающий сделанное утверждение.
Сохраните результаты этих тестов в переменных с именем weightComparison
, heightComparison
и pwdMatch
соответственно.
Загрузите начальную версию этой задачи для работы в собственном редакторе или онлайн-редакторе.
Вы можете попрактиковаться в этих примерах в интерактивных редакторах выше. Если вы хотите, чтобы ваша работа была оценена, или вы застряли и хотите попросить о помощи:
- Поместите свою работу в общедоступный онлайн-редактор, такой как CodePen, jsFiddle или Glitch.
- Напишите сообщение с просьбой об оценке и/или помощи в разделе «Обучение» форума MDN Discourse. Ваш пост должен включать:
- Описательный заголовок, такой как «Требуется оценка для теста навыков по математике 1».
- Подробная информация о том, что вы уже пробовали, и что вы хотели бы, чтобы мы сделали, например. если вы застряли и вам нужна помощь или хотите получить оценку.
- Ссылка на пример, который вы хотите оценить или с которым вам нужна помощь, в общедоступном онлайн-редакторе. Это хорошая практика, потому что очень сложно помочь кому-то с проблемой кодирования, если вы не видите его код.
- Ссылка на фактическое задание или страницу оценивания, чтобы мы могли найти вопрос, по которому вам нужна помощь.
Обнаружили проблему с содержанием этой страницы?
- Отредактируйте страницу на GitHub.
- Сообщить о проблеме с содержимым.
- Посмотреть исходный код на GitHub.
Последний раз эта страница была изменена 000Z»> 24 февраля 2023 г. участниками MDN.
Арифметические операторы JavaScript
🆕 🔜 Проверьте это, если вы мечтаете вести индивидуальный интернет-бизнес 🏖️
Обновлено 27 апр 2019
Выполнение математических операций и исчислений — обычное дело для любого языка программирования. JavaScript предлагает несколько операторов, помогающих нам работать с числами.
Выполнение математических операций и исчислений — обычное дело для любого языка программирования.
JavaScript предлагает несколько операторов, помогающих нам работать с числами.
- Дополнение (+)
- Вычитание (-)
- Отдел (/)
- Остаток (%)
- Умножение (*)
- Возведение в степень (**)
- Приращение (++)
- Уменьшение (
--
) - Унарное отрицание (-)
- Одинарный плюс (+)
Сложение (+)
const three = 1 + 2 const четыре = три + 1
Оператор +
также служит для объединения строк, если вы используете строки, поэтому обратите внимание:
константа три = 1 + 2 три + 1 // 4 'три' + 1 // три1
Вычитание (-)
const два = 4 - 2
Деление (/)
Возвращает частное первого оператора и второго:
const result = 20 / 5 / /результат === 4 const result = 20 / 7 //result === 2. 857142857142857
Если вы разделите на ноль, JavaScript не выдаст никакой ошибки, а вернет значение Infinity
(или -Infinity
, если значение отрицательное).
1 / 0 - // Бесконечность 1 / 0 //-бесконечность
Остаток (%)
Остаток — очень полезный расчет во многих случаях использования:
const result = 20 % 5 //result === 0 const result = 20 % 7 //result === 6
Остаток до нуля всегда равен NaN
, специальное значение, означающее «Не число»:
;(1 % 0) - //NaN (1 % 0) //NaN
Умножение (*)
Умножение двух чисел
1 * 2 - //2 1 * 2 //-2
Возведение в степень (**)
Возведение первого операнда в степень второго операнда
1 ** 2 //1 2 ** 1//2 2 ** 2//4 2**8//256 8 ** 2 //64
Оператор возведения в степень **
эквивалентен использованию Math.pow()
, но введен в язык, а не является библиотечной функцией.