nano_e_t_4: Если у вас будет разрастаться проект и на каждое странице будет по несколько onclick вам будет трудно изменять код.
Также принято разделять html/js друг от друга, это делает ваш код более читабельным и расширяемым.
Но никто не запрещает это делать, но не стоит злоупотреблять
Посмотрите курсы по JavaScript:
Видео курс JavaScript Essential
Видео курс JavaScript Advanced
Видео курс JavaScript Шаблоны
На сайте itvdn.com/ru/catalog
Думаю этого будет достаточно, чтобы понимать JavaScript, далее практика, придумать проект и делать использую новые знания
$interval не нужно использовать (это лоя примера) только $watch, а обновляться свойство должно через сокеты. $watch объект, который обновляет свойство текущего свойства. Подробнее о wachera'х по гугли dirty check angular