JS: Как в Javascript проверить переменную на undefined и значение?

November 8, 2016

Я люблю экспериментировать с языками программирования. Недавно у меня появилась задача, часто проверять переменную 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");

Комментарии

comments powered by Disqus