Этот фрагмент кода приводит к ошибке во время выполнения JavaScript: (foo
не определен)Использование неопределенных переменных, если-заявления
if (foo) {
// ...
}
Я должен определить foo
первый, например, так:
var foo = foo || null // or undefined, 0, etc.
... И только тогда я могу сделать:
if (foo) {
// ...
}
Почему?
Update:
Это было несколько из brainfart на моей стороне вещей: «fcourse вы не можете получить доступ к переменной, которая не выделяется.
Забавные вещи, которые вы можете сделать typeof() по неопределенной переменной you. Я собираюсь принять ответ miccet, так как я думаю, что это самое элегантное решение.
[Это] (http://2ality.com/2013/04/check-undefined.html) 2ality статья упоминает разные рекомендуемое способы проверки _undefined_, включая интерпретацию его как _falsy_ в булевых контекстах. – martieva