Как уже отмечалось другими, используя typeof
чек поможет вам некоторые пути туда:
if (typeof objCR == "undefined") {
alert("objCR is undefined");
}
Однако, это не будет различать objCR
существующих и будучи неопределенным (как это было бы если он был объявлен, но не назначен, например используя var objCR;
) и objCR
, которые никогда не были объявлены нигде в цепочке видимости, и я думаю, это то, что вы на самом деле хотите. Если вы хотите быть уверены, что ни objCR
переменные не было даже объявлено, вы могли бы использовать try/catch
следующим образом:
try {
objCR; // ReferenceError is thrown if objCR is undeclared
} catch (ex) {
alert("objCR has not been declared");
}
Поздравляет на быстром редактировании ..;) – 2010-12-08 12:14:27
..yes, били меня к этому, как хорошо! – 2010-12-08 12:15:46
Это не полностью отвечает на вопрос, поскольку я его понимаю, потому что `objCR` может быть легко объявлен в текущей области, но все еще не определен. Например, «var objCR;» сделает это. – 2010-12-09 12:46:33