• Теория
  • Теория

Равенство, неравенство

В прошлом задании мы потренировались использовать операторы >, <, >= и <=. Но в JavaScript можно также проверить значения только на равенство и неравенство. При этом используют операторы ==!==== и !==.

ОператорНазваниеДействие
==Нестрогое равенство (с приведением типов)Сравнивает два значения, перед этим приводит одно из значений к типу другого. Если значения равны, возвращает true.
===Строгое равенство (без приведения типов)Сравнивает два значения. Если типы значений разные или значения не равны, возвращает false.
!=Неравенство (с приведением типов)Сравнивает два значения, перед этим приводит одно из значений к типу другого. Если значения не равны, возвращает true.
!==Строгое неравенство (без приведения типов)Сравнивает два значения. Если типы значений разные или значения не равны, возвращает true.

Что значит «приводит или не приводит значения к одному типу»? Рассмотрим на примерах.

console.log('123' == 123); // Выведет true
console.log('123' != 123); // Выведет false

Строка и число окажутся равны друг другу. Так происходит, потому что при сравнении разных типов с помощью == значения приводятся к единому типу. Например, строка '123' превращается в число 123. А число 123 равно числу 123, поэтому сравнение возвращает true. По этой же причине неравенство != возвращает для этих значений false — их можно привести к одному типу, и тогда они будут равны друг другу.

console.log('123' === 123); // Выведет false
console.log('123' !== 123); // Выведет true

В этом случае результат получается противоположным. Строгое равенство === не приводит значения к одному типу, а сравнивает как есть: строку и число. А строка, какое бы значение она ни содержала, не равна числу, поэтому сравнение на равенство возвращает false. Зато строгое неравенство для таких значений возвращает true.

Потренируемся использовать операторы равенства.

Операторы «больше или равно» и «меньше или равно» приводят данные к одному типу. В этом случае равенство получается нестрогим.

Минимальный вид табов
  • index.html
HTML
HTML

Вы перешли на другую страницу

Кликните внутри мини-браузера, чтобы поставить фокус в это окно.

100%
Бабушка Кекс

Притормози, дружище

Проходить вызовы части «Условия» тренажёра «Программирование на JavaScript — основы языка» можно после регистрации и оформления подписки.