AngularJS Features

Features of AngularJS

  1. Data binding
  2. Directives
  3. Templates
  4. Services
  5. Filters
  6. Controllers
  7. Dependency Injection
  8. Validation
  9. Routing
  10. JQLite
  11. Factories
Data Binding

Data binding in AngularJS is the synchronization between the model and the view.

Directives

AngularJS lets you extend HTML with new attributes called Directives.

E.g. ng-app,ng-Init, ng-controller,ng-model etc.

There are approx 70 built in directive in Angularjs. You can make custom directives as per your need.

Templates

Templates are written with HTML that contains Angular-specific elements and attributes.

Angular combines the template with information from the model and controller to render the dynamic view
that a user sees in the browser.

Services

Angular services are substitutable objects that are wired together using dependency injection (DI).

You can use services to organize and share code across your app.

Filters

Filters can be added in AngularJS to format data.

E.g. currency, date,lowerCase, uppercase etc

Controllers

In Angular, a Controller is defined by a JavaScript constructor function that is used to augment the Angular Scope.

Dependency Injection

Dependency Injection is a software design pattern in which an object is given its dependencies,
rather than the object creating them itself.

E.g. we inject services, factories object inside controller to call the functions written in factories or services.

Validation

AngularJS helps to do client-side validation.

Routing

Routing is the best feature provided by AngularJS. Include ngRoute to make your application SPA(Single page application) with no page reloading.

JQLite

Angular doesn’t depend on jQuery. In fact, the Angular source contains an embedded lightweight alternative: jqLite.

Factories

A factory is a function which allows you to add some logic before you actually create an object
  1. ability to use other services (have dependencies)
  2. service initialization
  3. delayed/lazy initialization.

References: https://angularjs.org/