DevGang
Авторизоваться

== И === оператор в JavaScript

Если вы переходите с другого языка программирования, такого как C++, Java или Python. Возможно, это будет что-то новое и интересное для вас. Если это ваш первый язык программирования, вы должны знать, что это очень уникальная штука, основанная на JavaScript.

Так что же это за операторы  == и ===?

== — оператор абстрактного равенства, а === — оператор строгого равенства.

Основное отличие состоит в том, что они оба сначала выполняют проверку типов, и если тип обоих операндов имеет один и тот же тип данных, то операция передается оператору строгого равенства, а если типы не совпадают, операция передается абстрактному оператору. оператор равенства и абстрактное равенство будут выполнять принуждение к обоим своим операндам соответственно.

В первой строке кода JavaScript проверит типы левого и правого операнда и, если они оба одинаковы, передаст их оператору строгого равенства. Теперь вы можете быть сбиты с толку тем, что подразумевается под рукой? Это означает, что он будет вызывать оператор строгого равенства внутри.

Сначала начнем с первого оператора

1. Оператор строгого равенства (===):

Оператор строгого равенства (===), где x и y будут левым и правым операндами, которые будут возвращать true или false:

  • Eсли type(x) === type(y), то он вернет true.
  • Если type(x) — Number:

→ если x равно NaN, вернуть false.

→ если y равно NaN, вернуть false.

→ если x совпадает с числом y, вернуть true.

2. Абстрактный оператор равенства (==):

Абстрактный оператор равенства (==), где x и y будут левым и правым операндами, которые будут возвращать true или false:

  • Если type(x) == type(y) то же самое, он вернет результат выполнения оператора строгого равенства x===y.
  • Если x равно null, а y не определено, вернуть true, (наоборот)
  • Если type(x) — это Number, а type(y)String, то вернуть результат сравнения x==ToNumber(y), (наоборот)
  • Если Type(x) имеет логическое значение, вернуть результат сравнения ToNumber(x) == y, (наоборот)
  • Если Type(x) — это String, Number или Symbol, а Type(y) — это Object, вернуть результат сравнения x == ToPrimitive(y), (наоборот)

Мы закончили с оператором абстрактного равенства и оператором строгого равенства.

Примечание

1. Функции, которые использует JavaScript, т.е. ToPrimitive(), ToNumber() и т. д. Это абстрактные операции, и они используются внутри JavaScript.

2. В JavaScript NaN — единственное примитивное значение, которое не равно самому себе.

#JavaScript
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

В этом месте могла бы быть ваша реклама

Разместить рекламу