Javascript проверка на неопределенную переменную (test for undefined variable)

Задача: проверить существование переменной в JavaScript

Решение:

Пример 1 неверно

<script type="text/javascript" language="JavaScript"> 
//< ![CDATA[ 
if(a==undefined) alert(’переменная неопределнена’);
else
alert(’переменная определена’)//]]></script>

Выдает ошибку "переменная a неопределена"

Пример 2 верно

 
<script type="text/javascript" language="JavaScript">
//< ![CDATA[
 var a; 
if(a==undefined)
alert(’переменная неопределнена’);
else
alert(’переменная определена’)//]]>
</script>

Скрипт отрабатывает правильно. Выдается окно 'переменная неопределнена’

Пример 3 при использовании функции верно

 
<script type="text/javascript" language="JavaScript">
//< ![CDATA[ 
function test1(b,a) 
{
if(a==undefined)
alert(’переменная неопределнена’);
else
alert(’переменная определена’)}
 
test (1) // вызов функции без второго параметра
 
//]]>
</script>

Скрипт отрабатывает правильно. Выдается окно 'переменная неопределнена’

Получать новые сообщения по Email

5 комментариев на “Javascript проверка на неопределенную переменную (test for undefined variable)”

  1. fater пишет:

    Интересует проверка на существование переменных и свойств объектов, не проверка объявленных переменных, а вообще, всех, любых переменных.

  2. fater пишет:

    Все спасибо, извините за то что потревожил, буквально сразу нашёл идею, удовлетворяющую моим запросам 😉

  3. Богдан пишет:

    Во первых – надо писать строгое равенство =, так как ваша запись ничем не отличается от 0 или == null

    Во вторых если переменная не существует (например убрать var a; во втором примере), скрипт вылетит с ошибкой

    Учите матчасть и исправте статью

  4. Богдан пишет:

    в моем комментарии вырезаены некоторые знаки равенства. должно быть три знака = вместо одного и два знака = неред нулем

  5. Богдан пишет:

    я был неправ в одном пункте, 0 не равно undefined, но null равно undefined

Оставить комментарий