Javascript Runtime
JavaScript runtimes provide the environment for executing JavaScript code, including an engine, event loop, and APIs.
Browser Runtimes (Client-Side)
- Google Chrome, Edge β Uses V8
- Firefox β Uses SpiderMonkey
- Safari β Uses JavaScriptCore (Nitro)
- Opera β Uses V8
Browsers provide Web APIs for interacting with the DOM, handling events, making network requests, etc.
Server-Side Runtimes
- Node.js β Uses V8, provides APIs for file system, network, process control.
- Deno β Uses V8, provides a more secure environment with TypeScript support out of the box.
- Bun β Uses JavaScriptCore (Nitro), optimized for speed and performance in server applications.
Embedded Runtimes (IoT & Mobile)
- Electron (for desktop apps) β Uses V8 (bundled with Chromium)
- React Native β Uses JavaScriptCore
- QuickJS (lightweight runtime for embedded devices)
- Espruino (JavaScript for microcontrollers)