Angular is a Javascript framework that is used by developers for building web, desktop, and mobile applications. Development of Angular applications involves usage of Typescript, which is a superset of Javascript, along with HTML, CSS etc. The code written in Typescript compiles to Javascript and is rendered in the browser. Angular is one of the most popular Javascript frameworks for building web applications. There have been three popular versions of Angular to date -- Angular 1 (also known as AngularJS), followed by Angular 2, which was succeeded by Angular 4.
AngularJS and Angular 2 are very different from each other. However, Angular 2 and Angular 4 share many similarities. Angular 4 also has backward compatibility with Angular 2, that is, the code written in Angular 2 will work fine in Angular 4.
You must be wondering that why did Angular 3 not get released? Well, there were some versioning issues with the modules internally. Hence, the Angular team decided to skip the release of version 3 of Angular and directly went on to release Angular 4. Version 5 and 6 of Angular have also released recently, and Angular 7 will be released in September or October 2018. Since Google has pledged to upgrade Angular twice every year, new versions of Angular come up frequently. However, Angular 4 is as of now the most popular among them and is widely used. All the Angular versions from 2 and above are backward compatible. Single Page Applications are a type of web application that loads a single HTML page, and the page is updated dynamically according to the interaction of the user with the web app. Single Page Applications, also known as SPAs, can communicate with the back-end servers without refreshing the full webpage, for loading data in the application. SPAs provide better user experience as no one likes to wait too long for reloading of the full webpage. Angular supports the development of SPAs, and hence is worth learning!