«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript


Игра на «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих


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

Начнем с самых простых и всем известных: это операторы сложения, вычитания, умножения и деления. Из этих четырех особняком стоит оператор сложения.

Потому что при сложении строки и числа результатом будет строка. Это называется конкатенацией - сложение/соединение строк.

Остальные три оператора работают иначе. Подробнее о математических операторах и о преобразовании строк и чисел читайте здесь.



Сложение строк и чисел - Унарный плюс

Рассмотрим несколько примеров сложения строк и чисел и узнаем, что такое унарный плюс.

Пример 1.1 - Сложение строк и чисел

//   Сложение строк --> Результат строка
console.log('Hi' + ' Bill'); 

// Сложение строки и числа --> Результат строка
console.log('Hi number ' + 2);

// Сложение строки и числа --> Результат строка
console.log('5' + 2);

// Перед строкой унарный плюс --> Результат число
console.log(+'5' + 2);

// Перед строкой унарный плюс --> Результат NaN
console.log(+'Hi number ' + 2);

В последних примерах перед строкой стоит знак плюс +. Как известно при этом происходит преобразование строки в число. Такой плюс называется унарным.

Унарный плюс - это плюс, который ставится перед чем-то/перед каким-либо аргументом/операндом. Таким образом унарный плюс для своей работы использует только один аргумент.

Результатом последнего выражения является NaN - не число, потому что имеет место бессмысленная математическая операция.

Помимо стандартных математических операторов, в JavaScript часто используются операторы сравнения: больше >, больше или равно >= и меньше <, меньше или равно =<. Они будут рассмотрены позже.

Оператор % - Остаток от деления

Оператор % возвращает остаток от деления двух чисел/двух операндов.

Пример 4.1

console.log(5%2);

Результат


1

Оператор равенства - Присваивание

Нередко новички путаются с оператором равенства =.

Так вот, если оператор равенства используется один раз, то это обозначает присваивание. В примерах, рассмотренных в предыдущих статьях, использовалось присваивание (один знак равно).

Например, такая запись let incr = 10 говорит о том, что переменной incr присвоено значение/число 10.

Оператор сравнения - Два знака равно

Если же мы хотим что-то сравнить, то оператор равенства следует использовать 2 раза.

При помощи оператора сравнения == можно проверить действительно ли (правдиво/истинно ли) то или иное выражение/равенство.

Пример 5.1

console.log(2*4 == 8);

Результат


true

2 умножить на 4 действительно равно 8, поэтому в результате мы видим true.

Что будет если число 8 заключить в кавычки (ведь это будет уже строка)?

Пример 5.2

console.log(2*4 == '8');

Результат


true

В результате мы снова видим true. Потому что в данном случае (при использовании оператора двойного равенства) происходит сравнение по значению, но не по типу данных.

Оператор сравнения (два знака равно) == - это не строгое равенство.

Строгое равенство - Три знака равно

Изменим код в примере 5.2 - используем оператор строго равенства === - три знака равно.

Пример 6.1

console.log(2*4 === '8');

Результат


false

В результате мы видим false, потому что число 8 не равно строке '8'. Это разные типы данных.

Чтобы код из примера 6.1 был истинным, он должен выглядеть так:

Пример 6.2

console.log(2*4 === 8);

Результат


true

О двойном и тройном операторах равенства и примерах их использования читайте также здесь.

Логические операторы И и ИЛИ

Переходим к следующему виду операторов в JavaScript. Это логические операторы И и ИЛИ.

Логический оператор И записывается как два амперсанда &&. Выражение с участием оператора И возвращает true (является истинным), когда каждый из операндов выражения является истинным - true.

Логический оператор ИЛИ записывается как две вертикальные черты ||. Выражение с участием оператора ИЛИ возвращает true, когда хотя бы один из операндов является истинным - true.

Пример 7.1

const isChecked = true,
      isClose = true;

console.log(isChecked && isClose);      

Результат


true

Истина И Истина в результате дают Истину - true.

Пример 7.2

const isChecked = true,
      isClose = false;

console.log(isChecked && isClose); 

Результат


false

Истина И Ложь в результате дают Ложь - false.

Логический оператор И работает аналогично и с большим числом операндов.

Логический оператор ИЛИ

Логический оператор ИЛИ работает иначе. Продолжим работать с примером 7.2, только теперь будет задействован логический оператор ИЛИ ||.

Пример 7.3

const isChecked = true,
      isClose = false;

console.log(isChecked || isClose);

Результат


true

Истина ИЛИ Ложь в результате дают Истину - true. Хотя бы один из аргументов/операндов должен быть истинным.

Оператор отрицания - НЕ !

Оператор отрицания обозначается восклицательным знаком ! и преобразует логическое значение в противоположное.

То есть истинное значение true оператор отрицания НЕ преобразует в ложное - false и наоборот: false конвертирует в true.

Пример 8.1

const isChecked = false,
      isClose = false;

console.log(isChecked || isClose);  

Результат


false

Логическое выражение ложь ИЛИ ложь возвращает ложь - false.

Воспользуемся оператором отрицания НЕ.

Пример 8.2

const isChecked = false,
      isClose = false;

console.log(isChecked || !isClose);      

Результат


true

Теперь мы видим true, так как выражение ложь ИЛИ НЕ ложь, то есть ложь ИЛИ истина возвращает истину - true.

Порядок выполнения операторов

Порядок выполнения операторов в JavaScript это интересная тема, которая также поднимается в математике и которую нужно знать и понимать.

Рассмотрим следующее выражение.

Пример 9.1

console.log(2 + 2 * 2 === 8); 

Результат


false
В результате мы видим false, так как 6 не равно 8. В выражении 2 + 2 * 2 сначала выполняется операция умножения, а потом уже - сложение. То есть умножение имеет приоритет перед сложением.

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

Чтобы лучше понимать, в какой последовательности работают операторы, специально существует таблица приоритета операторов.

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

Подробнее о приоритете операторов и о том, как пользоваться таблицей приоритета операторов читайте здесь.

Неравенство !=

Оператор неравенства часто применяется в JavaScript. Он складывается из двух составляющих восклицательного знака и оператора присваивания !=.

Вернемся к примеру 9.1, только теперь вместо оператора строго равенства === применим оператор неравенства !=.

Пример 9.2

console.log(2 + 2 * 2 != 8); 

Результат


true

В результате мы видим true, потому что действительно 6 не равно 8.

Сравнение по типу и по значению

Поработаем еще немного с логикой и с примером 9.2.

Как в JavaScript происходит сравнение по типу данных и по значению.

Пример 9.3

console.log(2 + 2 * 2 != '6');   

Результат


false

В результате мы видим false, потому что в данном случае происходит сравнение по значению: 6 не равно 6 и, естественно, это ложь.

С оператором строго неравенства результат будет иным.

Пример 9.4

Результат


console.log(2 + 2 * 2 !== '6'); 

Результат


true

Здесь мы видим true, потому что число 6 не равно строке '6' и это правда.



Читайте также...



Отзывы и комментарии:

Комментариев нет...

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Рунет - Часть 1
Помощь сайту
Yandex-деньги/Ю-Money
410011236419322
Перевод на карту СБ
4276 1300 1671 5819
WebMoney
R711879515665 Z861169301432

Тематические публикации
Популярные заметки
Последние заметки