victorklimov
@victorklimov
Начинающий вэб-разработчик

Если внутри функции объявлять переменную без var, она будет глобальной?

Недопонимаю немного, объясните плиз
  • Вопрос задан
  • 159 просмотров
Пригласить эксперта
Ответы на вопрос 1
@uniquenicknqame
Нет, полноценной матерой глобальной переменной ей не стать:
var a =1;
function fn(){
    b=11;
}
fn();

console.log(a);
console.log(b);

delete a;
delete b;

console.log(a);
console.log(b);

Как видите, вашу сиротку, удалось убить.
Почему так происходит -- это уровень синьор++ и, по большому счету, для реальной разработки нафиг не нужно.
Ну если, вдруг, внезапно(!!!!1) захочется заморочится: гуглите ECMA-262, процессы, которые происходят до выполнения кода, контекст исполнения, обьект контекста (this), обект переменных (VariableObject) и еще вагон сопутствующего "итд", тогда и за хойстинг станет понятно в подробностях и за приведение типов..
..но оно вам таки надо на свою голову?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы