@roaddd

Нужно ли строго проверять if?

if(exampleVar === true) alert(1)
или
if(exampleVar) alert(1)
  • Вопрос задан
  • 170 просмотров
Решения вопроса 1
@goshaLoonny
В выражении if(exampleVar === true) строго проверяется является ли переменная exampleVar boolean и равна ли она true
В выражении if(exampleVar) (так же можно прочитать как if(exampleVar == true)) происходит преобразование типов при необходимости. То есть строка, число или массив тоже может вернуть true
Подробнее про преобразование типов в Javascript
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru
Разработчик на С++, экс-олимпиадник.
А почему не рассматривается третий вариант? Что-нибудь вроде
if (ToString(exampleVar)[0].length() == 4) alert(1)


Умышленно писать === true, конечно может быть иногда оправданно в языках без строгой типизации, но в целом это довольно редко оправданная вещь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы