Как избежать глобальность в JavaScript?
Используйте модули ES6 на пару с Babel и собирайте это с помощью webpackБонус
Можно создать отдельную область видимости с помощью анонимных функций.Так обычно поступают.(function() {
  // Code here
}());