Страницы

Поиск по вопросам

понедельник, 2 марта 2020 г.

Равенство 4 текстовых значений

#javascript


Почему 1 == 1 == 1 == 1 выдает результат true, а
'knx' == 'knx' == 'knx' == 'knx' выдает результат false
    


Ответы

Ответ 1



потому что 1 это ещё и true. попробуйте так 2 == 2 == 2 == 2 - будет false работает примерно так: (1 == 1) == 1 == 1 итого (true) == 1 == 1 далее ((true) == 1 ) == 1 - тоже true (так как 1 это true). Ну и так далее... 'knx' == 'knx' == 'knx' == 'knx' : 'knx' == 'knx' == 'knx' == 'knx' -> (true) == 'knx' == 'knx' -> (true == 'knx') - false

Ответ 2



Потому что это логично. 1 - истина (true), 0 - ложь (false). Результат первой операции сравнения будет логическим типом и равняется true, далее true ты сравниваешь с 'knx'. А теперь подумай над этим - 'knx' == true.

Ответ 3



Потому что сравнение выполняется слева направо: ((1 == 1) == 1) == 1 (true == 1) == 1 true == 1 true Правильно сравнивать одним из следующих способов: var a = 2, b = 2, c = 2, d = 2; console.log(a == b && a == c && a == d); console.log(a === b && a === c && a === d);

Комментариев нет:

Отправить комментарий