Javascript var или не var, какая разница?
Возможный дубликат:
Разница между использованием var и не использованием var в JavaScript
Привет всем
Объявление var myVar;
с ключевым словом var
или объявлением myVar
без него.
Это может быть глупый вопрос для некоторых, но я участвую в процессе обучения с javascript.
Когда-то, читая код других людей, я вижу, что некоторые переменные объявляются без "var" спереди. Чтобы подчеркнуть, эти переменные даже не объявлены как параметры функции.
Итак, какая разница между объявлением переменной с или без ключевого слова 'var'?
Большое спасибо
Ответы
Ответ 1
Если вы его не используете, это может быть глобальная переменная или в случае IE, она просто взорвется.
Есть случаи, когда вам это не нужно, например, если это параметр для функции, в которой вы находитесь, она уже объявлена. Всегда используйте var
в любых других случаях (другие случаи: если вы не манипулируете уже существующей переменной). Независимо от того, какой объем он должен быть определен, явным образом определяю его там.
Ответ 2
Это все о области. Технически вы можете опустить var, но считайте это:
myVar = "stuff";
function foo() {
myVar = "junk"; //the original myVar outside the function has been changed
}
function bar() {
var myVar = "things" //A new scoped myvar has been created internal to the function
}