# JavaScript JavaScript (JS) is a high-level, interpreted programming language that powers interactive web pages and is now used for server-side development, mobile apps, and more. Created by [[Brendan Eich]] at Netscape in 1995 (in just 10 days), it has become one of the most widely used programming languages. Despite the name, JavaScript is unrelated to Java—the name was a marketing decision to capitalize on Java's popularity at the time. ## Key Characteristics - **Dynamic typing**: Types determined at runtime - **First-class functions**: Functions are values - **Prototype-based**: Object inheritance via prototypes - **Event-driven**: Asynchronous, non-blocking I/O - **Multi-paradigm**: OOP, functional, imperative ## Where JavaScript Runs - **Browser**: DOM manipulation, user interactions - **Server**: [[Node.js]], Deno, Bun - **Mobile**: React Native, Ionic - **Desktop**: Electron ## Modern JavaScript (ES6+) ```javascript // Arrow functions const add = (a, b) => a + b; // Destructuring const { name, age } = person; // Async/await const data = await fetch(url); // Modules import { helper } from './utils.js'; ``` ## Ecosystem - **Package manager**: npm, yarn, pnpm, [[Bun]] - **Frameworks**: React, Vue, Angular, Svelte - **Bundlers**: Vite, webpack, esbuild - **Testing**: Jest, Vitest, Playwright ## References - https://developer.mozilla.org/en-US/docs/Web/JavaScript - https://en.wikipedia.org/wiki/JavaScript ## Related - [[TypeScript]] - [[Node.js]] - [[JavaScript Object Notation (JSON)]] - [[LangChain]]