Допустим, у вас есть следующие функции:Как определить оператор неопределенной переменной?
var variable;
function(variable);
function function(variable) {
alert ("variable equals " + variable);
if (variable != 'undefined') {
~~~code1~~~
} else {
~~~code2~~~
}
}
В бдительные выходы:
переменная равна неопределенными
Однако ~~~ ~~~ code2 никогда не выполняется. Я предполагаю, что мой синтаксис неверен. Если я не определил переменную, как мне получить функцию функции для выполнения ~~~ code2 ~~~?
Экстренная Информация
Когда переменная переменная жёстко, как показано в следующем коде:
var variable;
function(variable)
function function(variable) {
variable = 2;
alert ("variable equals " + variable);
if (exponent == 2) {
~~~code1~~~
} else {
~~~code2~~~
}
}
~~~ ~~~ code1 выполняется.
Попробуйте выполнить '! ==' или 'typeof! ==' См. Http://stackoverflow.com/questions/27509/detecting-an-undefined-object-property-in-javascript – aug
Вы предупреждаете переменную, называемую «variable», но ваш тест if находится в переменной, называемой «exponent». То, как вы описываете проблему, звучит для меня так, как будто вы думаете, что у вас есть только одна переменная. Для кода, который вы показали, нет никакого смысла, что присвоение значения от 2 до _variable_ повлияет на тест if на _exponent._ Кроме того, проясните, что вы подразумеваете под «неопределенной переменной», поскольку это может означать «переменная, которая существует, но который содержит значение _undefined_ ", или это может означать« переменная, которая вообще не существует ». – nnnnnn
Хм, похоже, это дубликат. Я предполагаю, что мой поисковый запрос немного отстал, но спасибо всем, кто ответил. –