Единственный раз, когда вам понадобится встроить функцию js в ваш HTML с использованием тегов , это если ваш javascript генерируется вашей серверной программой в зависимости от данных, пользовательских настроек и т. Д.
Даже этот случай крайне редок, поскольку вы должны иметь возможность создать функцию .js, поведение которой контролируется передачей параметров.
Помимо того, что все в порядке и в том месте, где вы ожидаете его найти, есть преимущество в производительности сети, заключающееся в том, что файлы * .js кэшируются на стороне клиента, поэтому вы не будете постоянно отправлять одни и те же вещи по сети снова и опять.