Simindey
6/9/2017 - 5:33 AM

проверить переменную JS на undefined

проверить переменную JS на undefined

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