Javascript равно одному из двух

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

Оператор === ( строго равно ) производит сравнение значений операндов без преобразования типов.

Значения считаются равными:

  • Если оба значения являются null или undefined .
  • Если оба значения являются true или false .
  • Если оба значения являются числами с одним и тем набором цифр ( 0 и -0 равны).
  • Если оба значения являются строками и они содержат одни и те же 16-битные последовательности.
  • Если оба операнда ссылаются на один и тот же объект, массив или функцию.

Значения считаются не равными:

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

Если значения операндов равны оператор === возвращает true , если не равны – false :

alert('7' === 7); // false alert(null === null); // true alert((2 + 2) === 4); // true alert(0 === -0); // true

Оператор == ( равно ) выполняет сравнение значений. Если значения операндов имеют разные типы, оператор выполняет неявное преобразование типов и затем пытается выполнить сравнение.

Преобразование типов выполняется по следующим правилам:

  • Если одно значение является числом, а другое – строкой, то строка преобразуется в число.
  • Если один из операндов имеет значение true , оно преобразуется в число 1 , если значение false – в число 0 .
  • Если значение ссылочного типа сравнивается с числом или строкой, оператор попытается преобразовать его к примитивному значению.

Значения считаются равными:

  • Если одно значение null , а другое undefined .
  • Если оба значения являются null или undefined .
  • Если оба значения являются true или false .
  • Если оба значения являются числами с одним и тем набором цифр ( 0 и -0 равны).
  • Если оба значения являются строками и они содержат одни и те же 16-битные последовательности.
  • Если оба операнда ссылаются на один и тот же объект, массив или функцию.
Читайте также:  Java construct class object

Значения считаются не равными:

  • Если одно или оба значения являются NaN .
  • Если строки отличаются содержимым.
  • Если две строки выглядят одинаково, но содержат различные последовательности 16-битных значений.
  • Если оба операнда ссылаются на разные объекты, массивы или функции.
alert(null == undefined); // true alert("123" == 123); // true alert(true == "1"); // true alert(4 == 5); // false

Операторы != ( не равно ) и !== ( строго не равно ) выполняют проверки, в точности противоположные операторам == и === . Например, оператор != возвращает false , если два значения равны друг другу в том смысле, в каком они считаются равными оператором == , и true в противном случае:

alert(4 != 3); // true alert("4" != 4); // false alert("4" !== 4); // true

Оператор > ( больше ) возвращает true , если значение левого операнда больше, чем значение правого операнда, в противном случае он возвращает false :

alert(5 > 3); // true alert(5 > 6); // false

Оператор >= ( больше или равно ) возвращает true , если значение левого операнда больше или равно значению правого операнда, в противном случае он возвращает false :

alert(5 >= 3); // true alert(5 >= 5); // true alert(3 >= 4); // false

Код буквы в нижнем регистре всегда больше, чем код буквы в верхнем регистре. Код цифры находящейся в строке всегда меньше кода буквенного символа в любом регистре. Обычно, буква расположенная в алфавитном порядке раньше меньше , чем буква (в том же регистре) расположенная в алфавитном порядке после неё:

Копирование материалов с данного сайта возможно только с разрешения администрации сайта
и при указании прямой активной ссылки на источник.
2011 – 2023 © puzzleweb.ru

Читайте также:  Nested do while in java

Источник

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

Осваивайте профессию, начните зарабатывать, а платите через год!

Курсы Python Ак­ция! Бес­плат­но!

Станьте хакером на Python за 3 дня

Веб-вёрстка. CSS, HTML и JavaScript

Станьте веб-разработчиком с нуля

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

Операторы сравнения позволяют сравнивать два значения между собой и, если условие выполнено, возвращают true , а если нет — false .

Выражения сравнения всегда возвращают логические значения, которые широко применяются в инструкциях if , while или for для управления ходом исполнения программы.

Полный список операторов сравнения в JavaScript приведен в следующей таблице:

Оператор Описание Пример Результат
== Равно 10 == 20 false
=== Строго равно (идентичность) «20» === 20 false
!= Не равно 10 != 20 true
!== Строго не равно 20! == 20 false
> Больше чем 20 > 10 true
>= Больше или равно 20 >= 10 true
Меньше чем 20 < 10 false
Меньше или равно 20 false

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

Оба оператора принимают операнды любого типа и, если операнды равны, оператор равенства == возвращает true , а оператор неравенства != возвращает – false .

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

  • Если какой-либо операнд число или булево значение, то операнды преобразуются в числа, при этом true преобразуется в 1, а false преобразуется в 0.
  • Если какой-либо операнд строка – второй преобразуются в строку.
  • Если одно из значений представляет собой объект, а другое – число или строку, то объект преобразуется в элементарный тип.
  • Если одно из значений равно null , а другое – undefined , то они равны.
  • Значения null и undefined не преобразуются для сравнения ни в какие другие значения.
  • Значение NaN считается не равным никакому другому значению, включая само себя. При его наличии оператор равенства всегда возвращает false , а оператор неравенства – true .
  • Если оба операнда являются объектами, то они сравниваются, чтобы выяснить, один ли это объект. Если да, возвращается true , иначе – false .

Источник

Истина или ложь?

@serverSerrverlesskiy

В этой главе будет много нового, но уж очень сложно быть не должно: ведь, в общем-то, всё вертится вокруг простой идеи — истина или ложь?

До сих пор мы всегда имели дело лишь с примитивными типами данных — с числами и строками. Быть может, вам уже встречался термин «примитивный» применительно к программированию? Если нет, я поясню: «примитивный» (ещё говорят «простой») означает, что этот тип данных не является объектом (к этому моменту мы ещё вернёмся) и не имеет встроенных методов работы (то есть функций⚙️).

Тип данных, который вам обязательно понадобятся, называется булевым boolean , или логическим. Булевый тип всегда имеет значение либо true — истина, либо false — ложь. И только так, и никак иначе! Он либо врёт, либо говорит правду — пан или пропал, свет включен или выключен, либо есть, либо нет. Вы либо сделали домашнее задание, либо нет. Только два 2️⃣ значения true или false .

Видео​

Операторы равенства​

Булевы значения приходятся как нельзя кстати, когда нам необходимо что-то сравнить в JavaScript. Когда такая необходимость появляется, мы сразу же вызываем операторы сравнения. Сейчас мы последовательно изучим все восемь операторов сравнения, но штука в том, что в результате работы каждого из них мы всё равно всегда останемся с булевым значением — либо true , либо false .

Равно == ​

Оператор равно сначала приводит операнды к одному типу, и затем применяет строгое сравнение. Если оба операнда являются объектами, то JavaScript сравнивает внутренние ссылки, которые равны в том случае, если они ссылаются на один и тот же объект в памяти.

Источник

Оцените статью