JavaScript. Подробное руководство, 6-е издание
Шрифт:
4.9. Выражения отношений
В этом разделе описаны операторы отношения в языке JavaScript. Это операторы проверяют отношение между двумя значениями (такое как «равно», «меньше» или «является ли свойством») и возвращают true или false в зависимости от того, как соотносятся операнды. Выражения отношений всегда возвращают логические значения, и эти значения чаще всего применяются в инструкциях
4.9.1. Операторы равенства и неравенства
Операторы
В языке JavaScript поддерживаются операторы
Операторы
Как отмечалось в разделе 3.7, объекты в языке JavaScript сравниваются по ссылке, а не по значению. Это значит, что объект равен только сам себе и не равен никакому другому объекту. Даже если два различных объекта обладают одним и тем же набором свойств, с теми же именами и значениями, они все равно будут считаться неравными. Два массива никогда не могут быть равными, даже если они содержат одинаковые элементы, следующие в одном порядке.
Оператор идентичности
• Если два значения имеют различные типы, они не идентичны.
• Если оба операнда являются значением
• Если оба операнда являются логическим значением
• Если одно или оба значения являются значением
• Если оба значения являются числами с одним и тем же значением, они идентичны. Если один операнд имеет значение 0, а другой -0, они также идентичны.
• Если оба значения являются строками и содержат одни и те же 16-битные значения (подробности во врезке в разделе 3.2) в одинаковых позициях, они идентичны. Если строки отличаются длиной или содержимым, они не идентичны. Две строки могут иметь один и тот же смысл и одинаково выглядеть на экране, но содержать отличающиеся последовательности 16-битных значений. Интерпретатор JavaScript не выполняет нормализацию символов Юникода, поэтому подобные пары строк не считаются операторами
• Если оба значения ссылаются на один и тот же объект, массив или функцию, то они идентичны. Если они ссылаются на различные объекты (массивы или функции), они не идентичны, даже если оба объекта имеют идентичные свойства.
Оператор равенства
• Если два значения имеют одинаковый тип, они проверяются на идентичность, как было описано выше. Если значения идентичны, они равны; если они не идентичны, они не равны.
• Если два значения не относятся к одному и тому же типу, оператор
• Если одно значение
• Если одно значение является числом, а другое - строкой, то строка преобразуется в число и выполняется сравнение с преобразованным значением!
• Если какое-либо значение равно
• Если одно из значений является объектом, а другое - числом или строкой, объект преобразуется в простой тип (как описывалось в разделе 3.8.3) и сравнение выполняется снова. Объект преобразуется в значение простого типа либо с помощью своего метода
Дважды одаренный. Том IV
4. Дважды одаренный
Фантастика:
городское фэнтези
альтернативная история
аниме
рейтинг книги
Восточная миссия (сборник)
Военные приключения
Приключения:
исторические приключения
рейтинг книги
О Чехове
рейтинг книги
История политических и правовых учений. Шпаргалки
Зачет
Научно-образовательная:
обществознание
юриспруденция
государство и право
шпаргалки
рейтинг книги
Семиотические исследования
Humanitas
Научно-образовательная:
философия
рейтинг книги
50 знаменитых больных
Документальная литература:
биографии и мемуары
рейтинг книги
Bash.org.ru 2007.07-09
Юмор:
прочий юмор
рейтинг книги