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

Базовый JavaScript

JS Учебник JS Синтаксис JS Переменные JS Операторы JS If Условия JS Циклы JS Строки JS Числа JS Функции JS Объекты JS Даты JS Массивы JS Наборы JS Карты JS Математические JS RegExp JS Типы данных JS Ошибки JS Дебагинг JS События JS Программирование JS Справочники JS UTF-8 Характеры

JS Расширенный

JS Версии JS Функции JS Объекты JS Классы JS Итерации JS Промисы JS Модули JS HTML DOM JS Окна JS Web API JS AJAX JS JSON JS jQuery JS Графика JS Примеры JS Объекты

JavaScript. Уроки W3Schools для начинающих на русском языке

Ua En Es De Fr

JavaScript Сравнение


Операторы сравнения

Операторы сравнения используются для сравнения двух значений.

Операторы сравнения всегда возвращают true или false.

Учитывая, что x = 5, в таблице ниже объясняются операторы сравнения:

Оператор Описание Сравнение Вернёт
== равно x == 8 false Попробуй это »
x == 5 true Попробуй это »
x == "5" true Попробуй это »
=== одинаковое значение и одинаковый тип x === 5 true Попробуй это »
x === "5" false Попробуй это »
!= не равно x != 8 true Попробуй это »
!== не равно значению или не равно типу x !== 5 false Попробуй это »
x !== "5" true Попробуй это »
x !== 8 true Попробуй это »
> больше чем x > 8 false Попробуй это »
< меньше чем x < 8 true Попробуй это »
>= больше чем или равно x >= 8 false Попробуй это »
<= меньше чем или равно x <= 8 true Попробуй это »

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

if (age < 18) text = "Слишком молодой, чтобы покупать алкоголь";

Вы узнаете больше об использовании условных операторов в разделе if...else этого учебника.


JavaScript Сравнение строк

Все вышеупомянутые операторы сравнения можно также использовать со строками:

Пример

let text1 = "A";
let text2 = "B";
let result = text1 < text2;
Попробуйте сами »

Обратите внимание, что строки сравниваются в алфавитном порядке:

Пример

let text1 = "20";
let text2 = "5";
let result = text1 < text2;
Попробуйте сами »

Сравнение разных типов

Сравнение данных разных типов может дать неожиданные результаты.

При сравнении строки с числом JavaScript преобразует строку в число. Пустая строка преобразуется в 0. Нечисловая строка преобразуется в NaN, которое всегда false.

Случай Значение Попробуй
2 < 12 true Попробуй это »
2 < "12" true Попробуй это »
2 < "John" false Попробуй это »
2 > "John" false Попробуй это »
2 == "John" false Попробуй это »
"2" < "12" false Попробуй это »
"2" > "12" true Попробуй это »
"2" == "12" false Попробуй это »

При сравнении двух строк "2" будет больше, чем "12".

В алфавитном порядке 1 меньше чем 21.

Чтобы обеспечить правильный результат, переменные следует превратить в правильный тип перед сравнением:

Пример

age = Number(age);
if (isNaN(age)) {
  voteable = "Input is not a number";
} else {
  voteable = (age < 18) ? "Too young" : "Old enough";
}
Попробуйте сами »