1. Роль JavaScript "=="
1. Когда содержимое == с обеих сторон - это строки, то сравните, равно ли содержимое строки.
2. Когда содержимое с обеих сторон == - это числа, сравните, равны ли размеры чисел.
3. Когда содержимое с обеих сторон == являются объектами или атрибутами функций объектов, сравните, равны ли адреса памяти.
2. Разница между == и ===
== Используется для общего сравнения, === Используется для строгого сравнения, == Вы можете преобразовать тип данных во время сравнения, === Строгое сравнение и возвращение флазы, если типы не совпадают.
Приведите пример:
<script type = "text/javascript"> alert ("/"/"== Истинный результат:"+("" == true)); alert ("/"/"=== Истинный результат:"+("" == true)); alert ("/"/"=== Истинный результат:"+("" == true)); alert ("/"/"=== Истинный результат:"+("== true)); "+(" "==)); alert ("/"/" ==== "+(" "==)); alert ("/"/" ==== "+(" "===)); </script>«1» == Истинные типы различны »==» Сначала будет выполнено преобразование типа, а верно в 1 преобразовано, то есть «1» == 1; В настоящее время типы все еще разные, продолжают выполнять преобразование типа, а «1» преобразуется, то есть 1 == 1; В настоящее время, «==», типы с обеих сторон левого и справа являются численными, что относительно успешно!
"1" === Правда, левая сторона - тип символа, правая сторона - это тип була, левая и правая сторона отличаются, результат неверно;
"1" === 1 Левая сторона - это тип символа, правая сторона - это численное тип int, а левая и правая сторона отличаются, и результат неверно;
Результаты работы:
Суммировать:
Разница между == и ==: "==" только значения должны быть равными; "===" Значения и типы должны быть равными.
Позвольте мне подробно объяснить разницу между тремя равными знаками и двумя равными знаками в JavaScript.
== Равенство эквивалентно, === Идентичность - это равенство.
==, когда две стороны имеют разные типы значений, сначала следует выполнять преобразование типа, а затем сравнение.
==, преобразование типа не выполняется, разные типы должны быть разными.
Следующее объяснено отдельно:
Давайте поговорим о ===, это относительно просто.
Следующие правила используются для определения того, равны ли два значения ===:
1. Если типы разные, они [неравны]
2. Если оба являются численными значениями и являются одинаковым значением, то [равно]; (! Исключение), если хотя бы один из них - НАН, то [не равен]. (Чтобы определить, является ли значение NAN, вы можете использовать только ISNAN () для суждения)
3. Если оба являются строками, а символы в каждой позиции одинаковы, то [равенство]; в противном случае [не равняется].
4. Если оба значения являются истинными, или оба являются ложными, то [равны].
5. Если оба значения относятся к одному и тому же объекту или функции, то [равенство]; в противном случае [не равняется].
6. Если оба значения являются нулевыми или оба неопределенными, то [равны].
Давайте поговорим о ==, согласно следующим правилам:
1. Если два типа значений одинаковы, сделайте === сравнение.
2. Если два типа значений разные, они могут быть равны. Преобразование типа выполняется в соответствии со следующими правилами, а затем сравнивает:
а Если один нуль, а другой - не определен, то [равно].
беременный Если один является строкой, а другой - числовое значение, преобразовать строку в числовое значение, а затем сравните ее.
в Если какое -либо значение верно, преобразуйте его в 1 и сравните его; Если какое -либо значение неверно, преобразуйте его в 0 и сравните его.
дюймовый Если один является объектом, а другой - численная или строка, преобразуйте объект в значение базового типа, а затем сравните его. Преобразуйте объект в основной тип и используйте его метод ToString или значение. Встроенный класс JS Core попытается ценить до Tostring; Исключением является дата, которая использует преобразование ToString. Основной объект без JS,
Лингхуо (я мало понимаю)
эн. Любая другая комбинация [неравна].
Например:
"1" == true
Если типы различны, True сначала будет преобразована в значение 1, и теперь оно становится «1» == 1, а затем преобразует «1» в 1 и сравните 1 == 1, что равно.
= Оператор назначения
== равна
=== строго равен
пример:
var a = 3;
var b = "3";
A == B возвращает True
a === B возвращает ложь
Потому что типы A и B разные
=== используется для строгого сравнения суждений