Loading
500 verified terms. Three tiers each: beginner, intermediate, advanced.
Calls the callback for each element; if the callback returns truthy, the element is included in the new array. Does not mutate. The result may be shorter than the original (or empty).
Calls the provided callback once for each element, collects the return values into a new array of the same length. Does not mutate the original. The callback receives (element, index, array).
Calls the callback with (accumulator, currentElement) for each item. The return value becomes the next accumulator. The second argument to reduce is the initial accumulator. Without it, the first element is used — which can be surprising on empty arrays.
Syntax that lets you write asynchronous code that looks synchronous. `async` marks a function as returning a promise; `await` pauses execution until a promise resolves, yielding control to the event loop in the meantime.
An upper bound on the growth rate of a function. O(n) means the work scales linearly with input size; O(1) means it stays constant; O(log n) grows much slower than n.
Set in the browser DevTools (click a line number) or in code with the `debugger` statement. Conditional breakpoints only pause when a specified expression is true. Logpoints log a message without pausing.
A control structure that chooses between code paths based on a boolean expression. `if/else` and `switch` are the common forms. Most languages also offer a ternary expression (`cond ? a : b`) for inline use.
After an event fires at the target element, it propagates up through all ancestor elements — each ancestor's listeners for that event type also fire. This enables event delegation: one listener on the parent handles events from all its children.
A base-16 number system where the digits A-F represent 10-15. Each hex digit corresponds to exactly 4 bits, so two hex digits represent one byte. Common in colors (#FF8800), memory addresses, and binary file dumps.
A function that operates on other functions — either by taking them as arguments (map, filter, reduce) or by returning a new function (factory, decorator). Higher-order functions enable composition and abstraction.
A function that is deterministic (same arguments → same return value) and side-effect-free (no mutation of external state, no I/O, no logging). Pure functions are trivially testable and safe to memoize.
Functions like `useState`, `useEffect`, `useContext`, `useRef`, and `useReducer`. Must be called at the top level of a component or custom hook — not inside conditions or loops. Custom hooks are plain functions that call other hooks.
Printed when an error is thrown, showing the call chain from the throw site to the entry point. Read top-to-bottom: the top line is where the error occurred; each subsequent line is the caller. File names and line numbers are included.
Managed with `useState` or `useReducer`. Each state update schedules a re-render. State is local to the component instance. To share state between sibling components, lift it to their common ancestor.
Implicit type conversion applied by the Abstract Equality Comparison (==), arithmetic operators, and string concatenation. `2 + '3'` gives `'23'` because `+` prefers string concatenation when one operand is a string.
Showing 50 of 500 terms