Node Js Interview Questions And Answers

Q.1. What is Node.js?
A. Node.js is a JavaScript run-time built on Chrome’s V8 JavaScript engine.
Nodejs is an open-source, cross-platform and JavaScript run-time environment. It is a lightweight framework used to develop server-side web applications.
Node.js is built upon Google Chrome’s V8 run-time—written in C++, built for multiple operating systems and super fast.The use of JavaScript also means that transforming JSON data—the most common data interchange format on the Web—is fast by default.Node.js used for creating large scale application development, mostly used for video streaming websites, single page application, and other web applications.

Setup a Node.js Development Environment on Windows, Mac and Linux –
It is easy to install Node.js on Mac, Windows and Linux. Simply you can go to Node.js official site and download you installer (Mac, Windows and Linux), and then execute the installer as per you and after that your window installer you received a text messages looks like, “Congrats!! You successfully installed Node.js on Windows!!”

Node.js Installer Following Steps,

1. Download the Windows installer from Nodejs.org official site.
2. Click and Run the installer (.msi installer package).
3. Follow the prompts instructions of the installer (Accept the agreement and click the NEXT button)
4. Restart your computer to get everything working in your command line interface (CLI).

Download Installer,

Download Node.js built installer and source code as for you, for Window, Mac and Linux with NPM and after that you can start developing applications.
The NPM is located in the directory where the Node.js is installed.

Update to Node.js, simply goes to Node.js official site and downloads Windows, Mac and Linux installer, and then executes the installer. Now your latest version of Node.js is updated on your machine.

Q.2 Why Node.js?e
A. The main reasons to use Node for what I do – which is building backend APIs for mobile and web application:1. Non-blocking asynchronous I/O (blocking I/O doesn’t scale for high concurrency)
2. Single-threaded event loop (like nginx and Redis – read: FAST)
3. Event-driven servers
4. Real lexical closures (like Haskell and Scheme – unlike Java and C++)
5. Built-in support for promises and generator-based Coroutines
6. HTTP/2 in the core (I don’t know of any other language/runtime that has a built-in support for HTTP/2 with no need to install any dependencies, at the time of this writing)
7. Excellent support for building REST, GraphQL and WebSocket servers, with Socket.io for legacy clients.
Q.3. Who Is the creator of Node.js?
A. Ryan Dahl is the creator of Node.js. The development was sponsored by Joyent.
Q.4. When it was initially released?
A. It was initially released in 2009.
Q.5. In which Language Node Js is written?
A. Node.js is written in C, C++, and JavaScript. It uses Google’s open source V8 JavaScript Engine to convert JavaScript code to C++.
Q.6. What Is npm?
A. The NPM is Node.js’ package ecosystem. It is the largest ecosystem of open-source libraries in the world. It is also the name of the command line package manager used to interact with npm.Uninstall Node.js and NPM –
You can uninstall Node.js and NPM same as like your other software. The following steps as below,
1. Open your windows control panel.
2. Choose the programs & features option.
3. Click to “uninstall a program”.
4. Select installed Node.js, and click the uninstall link.
Q.7. What is the name of the file which npm uses to identify the project and its dependencies?
A. Its name is package.json.
Q.8. Can we use other Engines than V8?
A. Yes! Microsoft Chakra is another JavaScript engine which can be used with Node.js. It’s not officially declared yet.
Q.9. What Are Benefits of using Node.js?
A. 1. Very Fast
2. Asynchronous
3. Scalable
4. Open Source
5. No Buffering
6. Highly optimized V8 engine
7. Excellent JIT8. Fantastic library of ready to use modules on npm
9. Great support for C++ extensions if you need threads for CPU-bound operations
Q.10. What Is the current version of Nodejs?
A. Click to know the detail about the – Latest Nodejs Version
Q.11. Where To Downloads and Install?
A. The Latest LTS Version: 12.13.1 (includes npm 6.12.1)
Download the Node.js source code or a pre-built installer for your platform, and start developing today.
The Downloads link…
Q.12. How To upgrading Node.js to latest version?
A. Windows:
You just download and reinstall node from the “.msi” in Windows from the node website.Linux/Mac:
The module n makes version-management easy:
sudo npm install n -g

For the latest stable version:
sudo n stable

For the latest version:
sudo n latest

Q.13. When Should We Use Node.js?
A. Nodejs can be used to develop:1. Node used for general Purpose Applications
2. Node used for real-Time Web Applications
3. Node used for developing chat applications
4. Node used for developing network applications
5. Node used for developing game servers
6. Node used for distributed systems

Q.14. When To Not Use Node.Js?
A. Node is a single threaded framework, so we should not use where the application requires long processing time, or taking so much time for any calculations.
Q.15. For Node.js, Why Google uses V8 Engine?
A. Google uses V8 as it is a Chrome runtime engine that converts JavaScript code into native machine code.These, in turn, speeds up the application execution and response process and give you a fast running application.
Q.16. What Are the Features of Node.js?
A. The list of Node Features:1. It is open source
2. High Scalability
3. It is extremely Simple and Fast
4. No Buffering
5. Single-Threaded
6. Asynchronous
7. Async stack traces
8. Faster await
9. Cross-Platform
10. Faster suite
11. Easy to Learn
12. Easy to Scale
13. Caching
14. Data Streaming
15. Hosting
16. Single Programming Language
17. Real-time web applications
18. import / export statements supported (no bundler required)
19. Faster parsing of JavaScript
20. Faster calls with arguments mismatch
21. And some other Improvements like – Heap Size, Native Modules N-API
22. License: It is been released under MIT license.
Q.17. How To check the NPM version?
A. You can always check the version with following command:
npm -version
Q.18. How To check the Node version?
A. You can always check the version with following command:
node –v
Q.19. What modules that Nodejs offers?
A. Three modules that Nodejs offers:
1. Core Modules
2. Local Modules
3. Third-party modulesCore Modules –
Generally, Core modules get loaded just after the initiation of the Node process.

Local Modules –
The Local modules are created locally by the user or dedicated software developer. All such modules may have several functionalities grouped into different files and folders. And all these can be distributed in the Nodejs community with the help of Node Package Manager.

Third-party modules or External Modules –
The third-party modules by downloading them through Node Package Manager.

Q.20. What Is Global Objects in Node.Js?
A. The term global objects standard built-in objects.
These objects are available in all modules. The following variables may appear to be global but are not. They exist only in the scope of modules, see the module system documentation:
1. __dirname
2. __filename
3. exports
4. module
5. require()Note – most of developers to be confused with the global object.

Q.21.What Is Value properties in Node.js?
A. The Value properties are global properties and it is returning a simple value; they have no properties or methods.
1. Infinity
2. NaN
3. undefined
4. null literal
5. globalThis
Q.22. What Is Function properties in Node.js?
A. The function properties are global functions. These global functions—functions which are called globally rather than on an object—directly return their results to the caller.
1. eval()
2. uneval()
3. isFinite()
4. isNaN()
5. parseFloat()
6. parseInt()
7. decodeURI()
8. decodeURIComponent()
9. encodeURI()
10. encodeURIComponent()
11. escape()
12. unescape()
Q.23. What Is Node.js’ Cluster module?
A. The Nodejs module used to take advantage of multi-core systems, so that apps can handle more load.
Q.24. What does package.json file consist of?
A. The metadata information in package.json file can be categorized into below categories:
1. Identifying metadata properties
2. Functional metadata properties
Q.25. What is the file `package.json`?
A. The package.json is a plain JSON text file which contains all metadata information about Node JS Project or application.Every Node JS Package/Module should have this file at root directory to describe its metadata in plain JSON Object format.For a more complete package.json, we can check out-

[php]

{
“name”: “npm-demo”,
“version”: “0.1.0”,
“private”: true,
“dependencies”: {
“axios”: “^0.19.0”,
“bootstrap”: “^4.3.1”,
“jquery”: “^3.4.1”,
“popper.js”: “^1.16.0”,
“react”: “^16.12.0”,
“react-bootstrap”: “^1.0.0-beta.15”,
“react-dom”: “^16.12.0”,
“react-router-dom”: “^5.1.2”,
“react-scripts”: “3.2.0”
},
“scripts”: {
“start”: “react-scripts start”,
“build”: “react-scripts build”,
“test”: “react-scripts test”,
“eject”: “react-scripts eject”
},
“eslintConfig”: {
“extends”: “react-app”
},
“browserslist”: {
“production”: [
“>0.2%”,
“not dead”,
“not op_mini all”
],
“development”: [
“last 1 chrome version”,
“last 1 firefox version”,
“last 1 safari version”
]
},
“description”: “This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).”,
“main”: “index.js”,
“devDependencies”: {},
“repository”: {
“type”: “git”,
“url”: “demo”
},
“keywords”: [
“npm-demo”
],
“author”: “Anil”,
“license”: “ISC”
}

[/php]

The detail about:

· name: The name of the application/project
· version: The version of application.
· description: The describe about your application
· main: This is the entry/starting point of the app.
· scripts: The scripts which needs to be included in the application to run properly.
· engines: The versions of the node and npm used.
· keywords: It specifies the array of strings that characterizes the application.
· author: It consist of the name of the author
· license: The license of the application if applicable
· dependencies: Installed third party package using npm information
· devDependencies: The dependencies that are used only in the application development like GIT.
· repository: It contain the information about the type and url of the repository where application is host application

Q.26. Who uses package.json file?
A. NPM (Node Package Manager) uses this package.json file information about Node application information or Node Package details.The package.json file contains a number of different directives or elements.
Q.27. What is the alternative to the Node package manager (npm), which was introduced by Facebook in 2016?
A. Yarn
Q.28. What Is the difference between dependencies and devDependencies?
A. Both are defined in the package.json.
The Dependencies list the packages that the project is dependent on.
The devDependencies list the dependencies which are only required during testing and development.
Q.29. What Directives is required in package.json file?
A. The Package.json file contains two mandatory directives –

1. name
2. version

Name – The name is a mandatory directive in package.json file and it is a unique package/module name.

Version – The Version is a mandatory directive in package.json file and it contains the version information

Q.30. What Is control flow function?
A. A generic piece of code which runs in between several asynchronous function calls is known as control flow function.
Q.31. What Is a Blocking function?
A. A blocking function’s execution must be completed before other statements are executed.
Q.32. What Is the difference between Angular and Node.js?
A. Angular –
1. Angular is an open source web application development frameworks and It is written in TypeScript.
2. Angular is used for creating highly active and interactive single page applications.
3. Angular is very helpful in splitting an app into MVC components.
Node.js –
1. Node is a cross-platform run-time environment for applications and It is written in C, C++ and JavaScript languages.
2. Node used for building a fast and scalable, and server side networking applications.
3. Node is very helpful in generating database queries.
Q.33. How many types of API functions are there in Node.js?
A. There are two types of API functions in Node.js:
1. Asynchronous, non-blocking functions
2. Synchronous, blocking functions
Q.34. What Are Async and Await?
A. A function marked with the async keyword can contain an await expression.
The await expression pauses the execution of the function and waits for the resolution of the passed Promise. It then resumes the function’s execution and returns the resolved value.
Q.35. Is Node.js really Single-Threaded?
A. Yes, it is a single thread