Операторы

JavaScript простым языком

Generic badge

Большинство операторов известно нам еще с начальных классов, к примеру:

  • +

  • -

  • /

  • *

  • =

Они все используются в JavaScript, но есть нюансы.

Нюансы касаются операторов: +, -, *. Они в JavaScript умеют немного больше, чем в обычной математике.

Унарный/бинарный плюс

К примеру, с помощью оператора + можно складывать не только числа, но и строки:

Стоит быть крайне внимательными, когда пытаетесь сложить 2 числа, а точнее, это вы думаете, что там 2 числа, а на самом деле там могут оказаться строки. И всё, приплыли, выдаст ошибку.

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

Чтобы такой чумы не случилось, можно использовать функцию JavaScript под названием Number, а можно использовать еще одну супер способность оператора +: преобразование к числу. Это я тоже уже показывал в одном из предыдущих уроков:

В данном случае, переменная b будет иметь значение 45 и тип, внимание – Number. Оператор + поставленный перед любым значением, будет пытаться преобразовать это значение к типуNumber. В данном случае его называют унарным плюсом, что означает лишь одно: плюс применяется только к одному операнду.

Запись такого типа, не должна тебя пугать:

Здесь происходит следующее: тот плюс, который стоит непосредственно перед складываемым значением является унарным, он имеет больший приоритет для JavaScript. Т.е., сначала произойдет преобразование к числам, и только потом отработает бинарный плюс.

Бинарный плюс – оператор, который применяется уже к 2-м операндам (аргументам).

Небольшой пример бинарного плюса:

В предыдущем уроке о циклах, я упомянул такие термины, как инкремент и декремент. Разберем эти понятия.

Инкремент

Инкремент просто-напросто увеличивает текущее значение переменной на единицу:

Как видишь, плюсики стоят после переменной. Такая запись инкремента называется постфиксной формой. Но есть еще префиксная форма.

Префиксная форма точно так же, как и постфикснаяувеличивает значение на единицу. Но в чем же тогда разница, спросишь ты? А вот в чем:

Думаешь, что в консоль выведется значение 6? А вот и нет, в консоль выведется старое значение 5. Значение в данном случае увеличивается после того, как ты вызвал инкремент, а не в момент его вызова.

А вот префикснаяработает так, как ты ожидал от постфиксной:

Префиксная форма меняет значение переменной перед тем, как вывести в консоль и поэтому все работает более логично.

Декремент

Декремент уменьшает текущее значение переменной на единицу:

Декремент тоже имеет префиксную и постфиксную формы.

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

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

JavaScript позволяет достаточно просто возвести любое число в любую степень. Для этого используется оператор **:

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

И еще один полезный оператор – %. Оператор позволяет нам получить остаток после деления. Пример:

В первом случае: 11 не делится на 2 без остатка. Максимальное число, которое делится на 2 без остатка в данном примере – это 10. Получается, что остаток здесь равен единице (11 - 10).

Во втором случае все ровно так же: Максимальное число, которое делится без остатка в данном случае – это 6. Вычитая из значения 8 значение 6, получаем: 2.

Именно значение остатка и предоставляет нам этот оператор.

Домашнее задание

Сегодня совсем байтовое домашнее задание. Весь код я вынес в новый для тебя онлайн-редактор (Repl.it). Ещё раз изучи код и попробуй со всем поиграться самостоятельно.

Ссылка на редактор с кодом

Last updated

Was this helpful?