• Register
300 points
8 4 2

What is Angular?

Angular is a TypeScript-based open-source web application framework, developed and maintained by Google. It offers an easy and powerful way of building front end web-based applications.


Angular integrates a range of features like declarative templates, dependency injection, end-to-end tooling, etc. that facilitates web application development.


What are the new features in Angular 6?

Angular 6 is almost the same as its previous version, but with few improvements. Projects developed in Angular 5 will easily support Angular 6.


Few of the crucial features that have been added to the newest version are:

  • The support for TypeScript 2.7+

  • Addition of elements

  • Component Development Kit with stable Angular material

  • Bazel compiler

  • Ivy renderer

  • Addition of restoredState and navigationSource to NavigationStart

  • NgModelChange event

  • Addition of multiple validators for FormBuilder’s array method

  • CLI 1.7 support and its feature addition

  • Update for ng


Provide clear difference with some proper example of code snippet between “declarations”, “providers”, and “imports” in ng module for angular 6?

Please find below an explanation of declaration, providers, and imports:


Declarations: This is one of the key features of Angular for available varieties components or pipes of a single directive for the current module to other directives of the current module. If someone willing to use some same declare component in the current module from other directives then declaration should need to be done properly.

Imports: Helping of availability of other module components in a current module by importing the same.

Providers: It is helping DI for identifying and understanding of using services and values.


How to use behavior subjects in angular 6?

The BehaviorSubject is used to hold the values that are to be shared with other components. You can subscribe to data with the BehaviorSubject that needs to be shared with other components.


You can subscribe to the data using the Behavior Subject service as the following.


//inject service into a component

dataService.data.subscribe(data => {

  //do whatever needs doing when data changes


//update the value of data in the service



Why was Angular introduced as a client-side framework? 

Traditionally, VanillaJS and jQuery were used by developers to develop dynamic websites. As the websites became more complex with added features and functionality, it was hard for the developers to maintain the code. Moreover, there was no provision of data handling facilities across the views by jQuery. So, Angular was built to address these issues, thus, making it easier for the developers by dividing code into smaller bits of information that are known as Components in Angular. 


Client-side frameworks permit the development of advanced web applications like SPAs which, if developed by VanillaJS, is a slower process.


What is the sequence of Angular lifecycle hooks?

Angular calls the lifecycle hook methods in the following sequence after creating a component/directive in Angular 6 by calling its constructor:


  • ngOnChanges()

  • This responds when Angular re-sets data-bound input properties.

  • ngOnInit()

  • Used to initialize the directive/component after Angular first displays the data-bound properties while setting the directive/component's input properties.

  • ngDoCheck()

  • Called during every change detection run, immediately after ngOnChanges() and ngOnInit() to detect and act upon changes that Angular won’t do on its own

  • ngAfterContentInit()

  • Called once after the first ngDoCheck() to respond after Angular projects external content into the component’s/directive’s view

  • ngAfterContentChecked()

  • Called after the ngAfterContentInit() and every subsequent ngDoCheck() to respond after Angular checks the projected content.

  • ngAfterViewInit()

  • Called once after the first ngAfterContentChecked() to respond after Angular validates the component and it’s child views.

  • ngAfterViewChecked()

  • Called after the ngAfterViewInit() and after every subsequent ngAfterContentChecked().

  • ngOnDestroy()

  • Called just before Angular destroys the directive/component to avoid memory leaks by effective cleanup just before destroying the directives.


Explain in details with a proper example on genuine differences identified specifically between “constructor” and “ngoninit” for angular JS 6 version?

This is the basic Angular 6 Interview Question asked in an interview. Please find details explanation below on constructor and ngonint for angular JS:


Constructor: Constructor is one of the default declarations for any specific class or object, it can be called every time when any class instantiated, also ensuring initialization properly of their subclasses and different instance variable fields.

Ngonint: It is one of the first initialize method using by Angular, mention in the first component of an angular life cycle. It mainly indicated that angular has been completed of creating entire require components properly. It is not mandatory to use but best practice to use.


What is the use of codelyzer in angular 6?

Codelyzer is a tool used for static analysis of the Angular TypeScript projects. This tool sits on the top of TSLint and checks if the Angular TypeScript projects follow the set of linting rules. It has over 50 rules to check the Angular projects. You can add this tool using the npm package manager to your project. This tool can be used to run the static code analyzer over web apps, native script, ionic, etc.

300 points
8 4 2