William Dawson

Full Stack Developer

Here we listed down the most asked interview questions on Node js so that you don’t have to go anywhere. This is a one-stop destination for all your queries. We provide you the top 25 interview questions on Node js so you can ace your interview. Let’s just look at the questions below.

1. What is Node js?

The first and most asked question is what is Node js?. Node js is an open-source server environment that uses javascript to make web software that is computationally simple but is easily accessed. It works really fast and can run on different platforms like Windows, Linux, Mac OsX, etc

2. What are some key benefits to Nodejs?

There are numerous benefits of Node js which are explained as follows.

  1. It is fast because it is built on Google chrome’s V8 JavaScript engine which makes it really fast.
  2. Node js has no buffering and no blocking while working. It output the data in chunks.
  3. It is Asynchronous meaning Nodejs never stops for an API to return the data. It is ready to take the next request.

3. Is Node js single-threaded? If yes, then why?

Well yes and actually no. NodeJS is single-threaded since no two functions can be run at the same time. Although, a running program called a process can have multiple threads. NodeJS runs only one program at a time to implement its asynchronous nature of program execution hence a single-threaded server environment but can a program can use multiple threads internally to yield optimal performance hence a multi-threaded server environment.

4. What type of applications you can build using Node js?

  • Streaming apps
  • Chat applications
  • Internet of things
  • Microservices
  • Collaboration tools
  • You just name it and we can build it using Node.js

5. How the content of a file is read by Node js?

The NodeJS’s fs (file-system) module provides an API to interact with the system files. The files can be read with multiple methods available to us. In the example below, we will be using the readfile method of fs module to read the contents of a file.

var fs = require(‘fs’);

fs.readFile(‘DATA’, ‘utf8’, function(err, contents) {



console.log(‘after calling readFile’);

if you want to know in synchronous manner then have a look in this sample

var fs = require(‘fs’);

var contents = fs.readFileSync(‘DATA’, ‘utf8’);



6. Discuss the streams in Nodejs? And what are the different types of streams?

Streams are something that allows the reading and writing of data from source to destination in a continuous process.

Streams are of 4 types

·         <Readable> that promotes reading operation

·         <Writable> that promotes writing operation

·         <Duplex> that promotes above both

·         < Transform> is a kind of duplex stream which does the computation based on available input.

7. What is closure?

A closure is a function that is sustained in another scope that has access to all other variables in the outer scope.

8. Does Zlib use in Nodejs? If yes, then why?

Yes, Zlib used in Nodejs and Zlib was written by Jean-loup Gailly and Mark Adler. It is a cross-platform data compression library. You need to install a node- Zlib package in order to use Zlib in Nodejs. A sample is given below which shows the code to use Zlib. 

var Buffer = require(‘buffer’).Buffer;

var zlib = require(‘zlib’);

var input = new Buffer(‘lorem ipsum dolor sit amet’);

var compressed = zlib.deflate(input);

var output = zlib.inflate(compressed);

9. Discuss the globals in Node.js?

Globals basically comprise three words which are Global, Process and Buffer. Let’s discuss it one by one.

Global–  As the name is suggesting Global is something which has many things under its umbrella. So it’s a namespace object and act as an umbrella for all other objects < global>

 Process– It is a specified type of Global and can convert Asynchronous function into an Async callback. It can be linked from anywhere in the code and it basically gives back the information about the application.

 Buffer– Buffer is something that is known as a class in Nodejs to tackle the binary data.


10. Differentiate between Nodejs and Ajax?

Ajax is used on a specific section of a page’s content and update that specific portion rather than updating the full part of the content.

Nodejs, on the other hand, used for developing client-server applications. Both of the above serve different purposes and these are the upgraded implementation of JavaScript.

11. What is Modulus in Node Js?

Modules are a reusable block of code whose existence doesn’t impact alternative code in any means. it’s not supported by Javascript. Modules come in ES6. Modules are necessary for Maintainability, Reusability, and Namespacing of Code.

12. What do you mean by an event loop and how does it work?

An event loop tackles all the callbacks in any application. It is the vital component of Nodejs and the main reason behind the non- blocking I/O. Since Node.js is associate event-driven language, you’ll be able to simply attach an observer to an occurrence so once the event happens the callback is executed by the precise observer.

13. What is callback hell?

Callback Hell is additionally referred to as the Pyramid of Doom. it’s a pattern caused by intensively nested callbacks that square measure unreadable and unwieldy. It usually contains multiple nested request functions that successively build the code exhausting to browse and correct. it’s caused by improper implementation of the asynchronous logic.

query(“SELECT clientId FROM clients WHERE clientName=’picanteverde’;”, function(id){

  query(“SELECT * FROM transactions WHERE clientId=” + id, function(transactions){


      query(“UPDATE transactions SET value = ” + (transac.value*0.1) + ” WHERE id=” +, function(error){










14. What are the types of API functions in Nodejs?

There are mainly two types of API functions, one is blocking function and the other is non- blocking function.

Blocking function:  These functions implement synchronously and all other code is blocked from implementing until an I/O event that is being waited occurs.

For instance

const fs = require(‘fs’);

const data = fs.readFileSync(‘/’); // blocks here until file is read


// moreWork(); will run after console.log

Non-blocking Functions: These functions implement ASynchronoulsy and in this multiple, I/O calls can be executed without being waited for.

For instance

const fs = require(‘fs’);

fs.readFile(‘/’, (err, data) => {

  if (err) throw err;



// moreWork(); will run before console.log

Since fs.readFile () is non-blocking, moreWork () does not have to wait for the file read to complete before being called. This allows for higher throughput.

15. What is Chaining in Nodejs?

Chaining is a system where one stream has an output and that is connected with the output of another stream that creates a chain-like formation of multiple stream operations.

16. Explain the Exit codes in Nodejs? Name some of the exit codes?

As the name is suggesting exit codes are those codes that are used to end the Process where process means a global object that represents a node process.

There are some exit codes given below.

  • Fatal error
  • Uncaught fatal Exception
  • Internal javascript Evaluation failure
  • Non-function internal exception handler
  • Unused
  • Internal exception handler Run-time Failure.

17. What is the working of control flow function?

Control flow function in Nodejs is a code that is implemented between Asynchronous function calls. There are some steps given below which must be followed while implementing it.

  • First, the order of execution must be controlled
  • Second,  collection of the required data is must,
  • Third, concurrency must be limited.
  • When the above process is done the next step of the program is requested.

18. Differentiate between readfile and createReadSTream in Nodejs?

  • Readfile loads complete file that you have marked to read on the other hand createReadStream reads the complete file in the pieces you have declared.
  • CreateReadStream works faster than Readfile. The client will get slower data in the latter one.
  • In Createreadstream, it first read by memory in parts the client will get a part of data that is read and this process will continue until it finishes but in Readfile a file is read by memory completely then the client will get it.

19. How to update a new version of NPM in Nodejs?

For this, you have to give a command for updating in Nodejs

$ sudo npm install npm -g

/usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js

[email protected] /usr/lib/node_modules/npm

20. How to prevent/ fix callback hell?

There are three ways to prevent fix callback hell

Handle every single error

Keep your code shallow

Modularize – split the callbacks into smaller, independent functions that can be called with some parameters then joining them to achieve desired results.

The first level of improving the code above might be:

var logError = function(error){







  updateTransaction = function(t){

    query(“UPDATE transactions SET value = ” + (t.value*0.1) + ” WHERE id=” +, logError);


  handleTransactions = function(transactions){



  handleClient = function(id){

    query(“SELECT * FROM transactions WHERE clientId=” + id, handleTransactions);


query(“SELECT clientId FROM clients WHERE clientName=’picanteverde’;”,handleClient);

You can also use Promises, Generators and Async functions to fix callback hell.

21. What is the procedure to handle child threads in Nodejs ?

In general, Node.js could be a single-threaded method and doesn’t expose the child threads or thread management ways. however, you’ll still build use of the child threads victimization spawn() for a few specific asynchronous I/O tasks that execute within the background and don’t sometimes execute any JS code or hinder with the most event loop within the application.

22. What are the different timing features of Nodejs?

Node.js gives a Timers module that contains different functions for executing the code after a stipulated period of time. There are some features of different timing that are given below.

setTimeout/clearTimeout –  It is Used to schedule code execution after a specific amount of milliseconds

setInterval/clearInterval – Used to implement a block of code multiple times

setImmediate/clear Immediate – Used to implement code at the end of the current event loop cycle

process.nextTick – Used to schedule a callback function that needs to be requested in the next repetition of the Event Loop.

23. What is the usage of buffer class in Nodejs?

Buffer category in Node.js is employed for storing the raw information similar manner of an array of integers. However, it corresponds to a raw memory allocation that’s settled outside the V8 heap. it’s a worldwide category that’s simply accessible will be accessed in AN application while not importation a buffer module. Buffer category is employed as a result of pure JavaScript isn’t compatible with binary knowledge.

24. What is the role of REPL in Nodejs?

REPL stands for Read, Eval, Print, Loop. The REPL in Node.js is used to implement ad-hoc Javascript statements. The REPL shell allows entry to javascript directly into a shell prompt and evaluates the results. For the purpose of testing, debugging, or experimenting, REPL is very critical.

25. What is libuv in Nodejs

libuv is a Cross-platform I/O abstraction library that supports asynchronous I/O based on event loop. It is written in C and released under MIT Licence.

libuv support Windows IOCP, epoll(4), kqueue(2), and Solaris event ports. Initially, it was designed for Node.js but after that, it is also used by other software projects.


Also Try Reading

Hire Node.js Developers

How useful was this post?

How useful was this post?

Click on a star to rate it!

Average rating 2.3 / 5. Vote count: 3

No votes so far! Be the first to rate this post.

Please do Rate Us and Share!

Related Blogs

  • author
    Adam Davidson

    Best Android Emulator for PC

    Android emulator for PC or MACs is one of the best for gamers to focus and improve their gaming skills.There are many reasons for emulating Android on your Windows PC, because with the help of emulation it is much easier to test apps on-screen or desktop than a mobile device. Android developers can debug...

  • author
    Adam Davidson

    Companies that Use Node JS in Production

    Despite of being arrived late on the scene, NodeJS is dominating the entire application development scenario with its great optimal features. This is a well-kept secret for the seamless distribution of their services that some of the top companies that use NodeJS for its web-based applications today. From concurrence to being a lightweight runtime,...

  • author
    Lucas White

    How to Use callBack With setState in React

    Today we are going to explore the callback function in setState and get to know about how we can use it.  First of all, I’d like to explain the ‘callBack’ and ‘setState’. callBack functions is a function that is passed as an argument to another function, to be “called back” at a later time....


About The Author

William is a CTO and a full-stack engineer with 10 years of experience. He has spent the past seven years doing web and mobile apps. He’s good at designing architecture and implementing agile development process. The technologies he’s worked with include: Node.js, Elixir, Rails, AngularJS, React, React Native, Objective-C, iOS, Java, Android. He’s also familiar with C++, Haskell, C#/.NET. He is an enthusiastic programmer and a great guy to know

Try our One-Week Risk Free Trial for Hiring a Coder

Know more Hire a Coder