Поделиться через


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

Обновлен: Ноябрь 2007

Результатом является логическое значение, представляющее результат сравнения.

expression1 comparisonoperator expression2

Аргументы

  • expression1
    Любое выражение.

  • comparisonoperator
    Любой оператор сравнения (<, >, <=, >=, ==, !=, ===, !==)

  • expression2
    Любое выражение.

Заметки

При сравнении строк в JScript используется значение символа Юникода строкового выражения.

Ниже описано поведение различных групп операторов в зависимости от типов и значений выражений expression1 и expression2.

Относительные (<, >, <=, >=)

  • Попытка преобразовать expression1 и expression2 в числа.

  • Если оба выражения являются строками, происходит лексическое сравнение строк.

  • Если любое из выражений имеет тип NaN, возвращается значение false.

  • Отрицательный нуль равен положительному нулю.

  • Отрицательная бесконечность меньше любых значений, включая себя саму.

  • Положительная бесконечность больше любых значений, включая себя саму.

Равенство (==, !=)

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

  • Значения типа NaN не равны никаким значениям, включая самих себя.

  • Отрицательный нуль равен положительному нулю.

  • Значение типа null равно значениям null и undefined.

  • Значения считаются равными, если это одинаковые строки, эквивалентные числа, одинаковые объекты, одинаковые логические значения или значения (если они различных типов), которые могут быть приведены к одному из перечисленных здесь случаев.

  • Все прочие сравнения считаются неравными.

Тождество (===, !==)

Эти операторы работают точно так же, как операторы сравнения, но без преобразования типов: для равенства типы должны быть одинаковыми.

Требования

Версия 1

См. также

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

Приоритет операторов

Сводные сведения об операторах