Advantages of AngularJS
Since angular is based on MVVM/MVC framework, model data and its business logic is decoupled from view. This makes our code reusable where view and model can have many to many relationships.
Two way binding
Angular provides built-in services like $http, $q to make our life easier and save time. We can create our custom services and expose them in other services or controllers using dependency injection.
Reusable code can be raped-in as a directive and this directive is exposed as HTML tag, attribute or class in the view.
Separations of concerns
In angular, every component will have one role, one file and singular purpose. For example: we would have a separate component called service to perform CURD operations on data in the database and not use controller for this.
Single page applications
Angular provides built-in routing mechanism which enables us to create SPA easily.
Angular provides built-in dependency injection feature which enables us to test individual units of code.
Project and Teams
Angular does a decent job in large projects and big teams as team members can create multiple modules, directives, filters and services individually and integrate all of them together.
Quick start and community
Angular is easy to learn and its popularity makes it easy to find resources and put a team together. Angular community is huge and lot of help is already available on web.