¿Por qué las variables globales se consideran una mala práctica?

Sigo viendo advertencias de no usar variables globales en JavaScript, pero parece que la única razón por la que la gente dice eso es porque se obstruye el espacio de nombres global. Puedo imaginar que esto se solucione fácilmente al colocar todas las variables en un objeto grande. Ahora la pregunta es: ¿existen otras razones para no usar variables globales que no sean por conveniencia? ¿Hay algún problema de rendimiento o compatibilidad con ellos?

Respuestas a la pregunta(7)

Su respuesta a la pregunta