JavaScript Runtime: Node JS is an open source, cross-platform runtime environment for executing JavaScript code outside of a browser
Node JS : is a JavaScript in a different environment means running is on the server or any computer
Built on Chrome V8 Engine: It runs on the v8 engine, which compiles JavaScript directly to native machine code, enhancing performance
V8 is written in C++ for seed
so you can write like this V8 + Backend Features = Node JS
Design Features an event-driven, on blocking I/O model for efficiency.
Full stack JavaScript: Allow using JavaScript on both server and client side.
Scalability: Ideal for scalable network application due to its architecture
Versability:suitable for web , real time chat, and REST API servers
Network Support: Support TCP/UDP sockets, which are crucial for building lower level network application that browser cant handle
Note: JavaScript in a single thread language
File System Access: Provide API's to read and write file directly
Server Side Capabilities: Node JS enables JavaScript to run on the server, handling HTTP requests, file operations, and other server-side functionalities.
Modules: Organize code into reusable modules using require()
Node JS Removed Features:
window object: The global window object, which is part of web browsers, is absent in Node js
Dom Manipulation: Node JS does not have a built in document object model (DOM) , as it is not intended to interact with webpages
BOM (Browser object Model): No direct interaction with things like navigator or screen which are part of BOM in browser
Web specific API: API like local storage, Session storage and browser based fetch are not available in Node JS