Глобальные переменные , как вы, наверное, догадались, считаются плохими.Любой другой код на странице может изменить их - часто потому, что другой программист случайно выбирает то же имя.Вы можете попытаться смягчить этот эффект, выбрав действительно странные имена, но затем вы получите кучу действительно странных имен.
Существует множество способов минимизировать количество глобальных переменных, создаваемых вами в JavaScript.Одним из способов является сохранение всех ваших переменных в одном объекте - это то, что делает jQuery (Технически, jQuery использует два - $ и jQuery.)
Если вы знаете, что делаете, вам часто не нужносоздайте любые глобальные переменные - просто оберните весь ваш код в функцию, которую вы немедленно вызываете.
Плохой пример - загрязняет глобальное пространство имен без необходимости:
var appleCount = 0;
function addApple() {
appleCount = appleCount + 1;
}
function howManyApples() {
return appleCount;
}
addApple();
alert(howManyApples());
Лучший пример - создает только одну глобальную переменную:
var appleCounter = {
count: 0,
add: function() {
this.count = this.count + 1;
},
howMany: function() {
return this.count;
}
};
appleCounter.add();
alert(appleCounter.howMany());
Лучший пример - не создает глобальных переменных:
(function(){
var appleCounter = {
count: 0,
add: function() {
this.count = this.count + 1;
},
howMany: function() {
return this.count;
}
};
appleCounter.add();
alert(appleCounter.howMany());
})();