Yop yop,
Avantage de l'avoir dans la même page : moins d'appel fichier serveur.
Avantage de l'avoir dans un fichier séparer : Maintenabilité du code / optimisation du chargement depuis le serveur (par besoin de retélécharger le JS => moins de bande passante.)
Avant les accès disque on s'en occupais sur certaine config bas de gamme, et on évitais aussi de faire du code un peu dégeulasse (cf les fameux script PHP rédiger à l'arrache fait par un stagiaire alcoolique histoire de lui filer une belle réputation de merde). Maintenant c'est plus trop d'actualité. 50 accès disque pour demander une page ne choque plus trop les gens, c'est pas pour un JS de plus ou de moins que ça changera.
Et même si ça pose problème, on préfèrera optimiser l'ossature du site / du serveur (exemple, des fichiers stocker en RAM) plutôt que de casser la règle du "un fichier = un langage".