1. What is Node js ?
Node Js is one of the most popular and powerful server technologies today.
It allows you built the entire website only in one programming Language i.e Javascript. Node js is free and open source server technology that uses Javascript to create complete web software.It runs on various platforms like Windows, Linux, Unix, Mac OS X, etc.

2. Explain CLI.
CLI stands for Command Line Interface. It is a utility or program on your computer where users type commands to perform some action or run some script rather than clicking on the screen.

3. Who is the author of Node Js ?
Node Js is written by Ryan Dahl.

4. Explain What is a Javascript Engine ?
A Javascript Engine is a program that converts code written in Javascript to something that computer processor understands.

5. Explain V8 Engine ?
V8 is Google’s open source high-performance JavaScript engine, written in C++ and used in Google Chrome, the open source browser from Google, and in Node.js, among others. It implements ECMAScript as specified in ECMA-262, and runs on Windows 7 or later, macOS 10.5+, and Linux systems that use IA-32, ARM, or MIPS processors. V8 can run standalone or can be embedded into any C++ application.

6. What is NPM ?
NPM stands for node package manager. It is default Package Manager for JavaScript programming language. NPM is used for installing/updating packages and modules of Javascript.

7. How can you check the installed version of Node Js ?
Use node -v command to check the installed version of Node Js.

8. Explain ECMAScript ?
ECMAScript is the standard on which Javascript is based on. It was created to standardize Javascript. It is commonly used for client-side scripting on the World Wide Web and used by Node Js for writing server applications and services.

9. Explain Modules in Node Js ?
Modules are reusable block of code whose existence does not impact other code in any way. It is not supported by Javascript. Modules are introduced in ES6. Modules are important for Maintainability, Reusability, and Namespacing of Code.

10. What are CommonJs Modules ?
CommonJS Modules is the Standard how to code modules are structured. It specifies an ecosystem for JavaScript outside on the server or for native desktop applications.

11. Explain module.exports in Node Js ?
The method or variable defined in modules cannot be directly accessible by the outer world, that means you cannot call a module member from the external file. In order to access module member, we need to export the functions or variables of modules using module.exports method.

Also Read:- Top 10 NodeJS Interview Questions and Answers

12. Is Node.js Single-threaded ?
Yes, Node Js is single threaded to perform asynchronous processing. Doing async processing on a single thread could provide more performance and scalability under typical web loads than the typical thread-based implementation.

13. What are events ?
An event is an action or occurrence recognized by software/app that is handled by event handler by writing a code that will be executed when the event fired.

14. Explain event loop in Node Js ?
In Node Js processes are single threaded, to supports concurrency it uses events and callbacks. An event loop is a mechanism that allows Node.js to perform non-blocking I/O operations.

15. Write the steps for setting up an Express JS application.
Following are the steps used to set up an express JS application: –
A folder with the same name as the project name is created.
A file named package.json is created inside the folder created.
“npm install” command is run on the command prompt. It installs all the libraries present in package.json.
A file named server.js is created.
“Router” file is created inside the package which consists of a folder named index.js.
“App” is created inside the package which has the index.html file.

16. What do you mean by Express JS?
Express JS is an application framework which is light-weighted node JS. A number of flexible, useful and important features are provided by this JavaScript framework for the development of mobile as well as web applications with the help of node JS.

17. What is the use of Express JS?
Express.js is a lightweight web application which helps in organizing the web application into MVC architecture on the server side.

18. How can models be defined in Express JS?
There is no notion of any database in Express JS. So, the concept of models is left up to third-party node modules, allowing the users to interface with nearly any type of database.

Also Read:- Top 20 NodeJS Interview Questions and Answers

19. How to authenticate users in express JS?
Since authentication is an opinionated area which is not ventured by express JS, therefore any authentication scheme can be used in express JS for the authentication of users.

20. Which template engine is supported by express JS?
Express JS supports any template engine that conforms to the (path, locals, callback) signature.

21. How can plain HTML be rendered in express JS?
There’s no need to render HTML with the res.render () function. If there’s a specific file, then you should use the res.sendFile () function. If any assets are being served from a dictionary, then express.static () middleware function needs to be used.

22. Explain what is libuv in Nodejs?
libuv is Cross-platform I/O abstraction library that supports asynchronous I/O based on event loops.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 later it is also used by other software projects.

23. What is JIT and how is it related to Node?
JIT stands for Just-in-time. A JIT compiler is a program which is used to send bytecode (it consists of instruction that can be interpreted) to the processor by converting it into instruction. After you have done with writing a program, the compiler compiles the source language statements into bytecode instead of compiling it into the code that carries the information which is similar to the specific hardware platform's processor.

24. How to use aggregation in Mongoose?
Aggregations are a set of functions that are used to manipulate the data that has been returned from a MongoDB query. In Mongoose, aggregations work as a pipeline. The aggregate function accepts the array of data transformations which are applied by data using different methods in terms of arguments.

25. How Node.js read the content of a file?
Normally NodeJs reads the content of a file in non-blocking, asynchronous way. Node Js uses its fs core API to deal with files. The easiest way to read the entire content of a file in nodeJs is with fs.readFile method. Below is sample code to read a file in NodeJs asynchronously and synchronously.

26. what is Closures?
A Closure is a function defined within another scope that has access to all the variables within the outer scope.

Global variables can be made local (private) with closures.

27. What are the features of Node.js?
Node.js is a single-threaded but highly scalable system that utilizes JavaScript as its scripting language. It uses asynchronous, event-driven I/O instead of separate processes or threads. It is able to achieve high output via single-threaded event loop and non-blocking I/O.

28. Why is Node.js Single-threaded?
Node.js is single-threaded for async processing. By doing async processing on a single-thread under typical web loads, more performance and scalability can be achieved as opposed to the typical thread-based implementation. 

29. Explain callback in Node.js.
A callback function is called at the completion of a given task. This allows other code to be run in the meantime and prevents any blocking.  Being an asynchronous platform, Node.js heavily relies on callback. All APIs of Node are written to support callbacks. 

30. Explain the role of REPL in Node.js.
As the name suggests, REPL (Read Eval print Loop) performs the tasks of – Read, Evaluate, Print and Loop. The REPL in Node.js is used to execute 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. 

Also Read:- Top 40 NodeJS Interview Questions and Answers

Follow Knowledge Guru on Twitter, Facebook, LinkedIn, RedditMix, Pinterestbe updated with latest news, Stay in the know with what's happening in the tech world. Get the best of news stories and information about “Innovation & Tech, Business, Startups, Latest News, Photography and trending”. Subscribe to Knowledge Guru Newsletters. For more details email us at knowledgeguru2019@gmail.com