Как стать автором
Обновить

JS. Проверка переменной на undefined или false

Я люблю экспериментировать с языками программирования. Недавно у меня появилась задача, часто проверять переменную JS на undefined, но при этом ещё проверить истина ли она. Стандартный код такой:
if(typeof undefinedVar == "undefined")
  alert("Undefined");
else
  alert("Not undefined");


Я расскажу Вам как можно это написать в 2-3 символа. Интересно? Тогда под кат.


Вот пример посложнее, надо проверить переменную на лож или истину. Значит:

if(typeof undefinedVar == "undefined" && !undefinedVar)
  alert("Undefined and false");
else
  alert(undefinedVar?"Not undefined True":"Not undefined False");


А теперь, что недавно обнаружил я, причём искал в интернете и не нашел ни в одной книге.

if(!!undefinedVar)
  alert("Not undefined");
else
  alert("Undefined");


То-есть, "!!" — является проверкой как определена ли переменная и является истиной, а "!!!" — как определена переменная и является ложью.
При этом если переменная является Undefined, то всегда вернется false.

Счастливых Вам экспериментов!

Доп. Пример
  var iDefined=true;
  var iDefinedMeToo=false;
  if(!!iDefined)
     alert("iDefined true");
  else
     alert("iDefined false");

  if(!!iDefinedMeToo)
     alert("iDefinedMeToo true");
  else
     alert("iDefinedMeToo false");

  if(!!iNotDefined)
     alert("iNotDefined true");
  else
     alert("iNotDefined false or iNotDefined is undefined");
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.