#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);
Комментариев нет:
Отправить комментарий