# JavaScript glossary: Freelancer level

58 JavaScript terms at the Freelancer level, each with a short definition and a link to its full page.

Updated: October 16, 2026

[Study these as flash cards](https://www.ask-codey.com/decks/javascript/freelancer)

- [&lt;slot>](https://www.ask-codey.com/glossary/slot): The element that marks where assigned light-DOM content appears inside a shadow tree.
- [&lt;template>](https://www.ask-codey.com/glossary/template): The element that stores inert HTML fragments for later use.
- [AbortController](https://www.ask-codey.com/glossary/abortcontroller): An object that sends cancellation signals to APIs such as fetch.
- [Async Iterator](https://www.ask-codey.com/glossary/async-iterator): An iterator whose next() method returns a Promise for each result.
- [Autonomous custom element](https://www.ask-codey.com/glossary/autonomous-custom-element): A custom element with its own hyphenated tag name.
- [Babel](https://www.ask-codey.com/glossary/babel): A JavaScript compiler commonly used to transform newer syntax for older environments.
- [CommonJS](https://www.ask-codey.com/glossary/commonjs): The Node.js module format based on require() and module.exports.
- [Currying](https://www.ask-codey.com/glossary/currying): Transforming a function with several parameters into a sequence of one-parameter functions.
- [Custom element](https://www.ask-codey.com/glossary/custom-element): An author-defined HTML element whose behavior is registered through the Custom Elements API.
- [Customized built-in element](https://www.ask-codey.com/glossary/customized-built-in-element): A custom element that extends a built-in HTML element and uses the is attribute.
- [Cypress](https://www.ask-codey.com/glossary/cypress): A popular in-browser end-to-end testing tool.
- [Debounce](https://www.ask-codey.com/glossary/debounce): A technique that delays work until rapid calls have stopped for a chosen time.
- [Declarative shadow DOM](https://www.ask-codey.com/glossary/declarative-shadow-dom): HTML syntax that creates a shadow root from a template element during parsing.
- [Deep Copy](https://www.ask-codey.com/glossary/deep-copy-javascript): A copy of a collection and everything inside it, fully separate.
- [Dynamic Import](https://www.ask-codey.com/glossary/dynamic-import): The import() expression, which loads a module asynchronously when requested.
- [ESLint](https://www.ask-codey.com/glossary/eslint): A configurable tool that reports problems and style issues in JavaScript code.
- [Event Bubbling](https://www.ask-codey.com/glossary/event-bubbling): The phase in which an event moves from its target up through ancestor elements.
- [Event Capturing](https://www.ask-codey.com/glossary/event-capturing): The phase in which an event travels from ancestors down toward its target.
- [Event Delegation](https://www.ask-codey.com/glossary/event-delegation): Handling events for many descendants with one listener on a shared ancestor.
- [Event Object](https://www.ask-codey.com/glossary/event-object): An object containing information about an event that occurred.
- [Event Target](https://www.ask-codey.com/glossary/event-target): The object on which an event was originally dispatched.
- [for await...of](https://www.ask-codey.com/glossary/for-await-of): A loop that awaits and visits values from an async iterable.
- [Generator Function](https://www.ask-codey.com/glossary/generator-function): A function declared with function\* that can pause and yield several values.
- [Immutability](https://www.ask-codey.com/glossary/immutability): The practice of creating new values instead of changing existing ones.
- [Iterable](https://www.ask-codey.com/glossary/iterable-javascript): Anything you can loop over with for.
- [Iterator](https://www.ask-codey.com/glossary/iterator-javascript): Gives out items one at a time with next() and remembers where it is.
- [Iterator Protocol](https://www.ask-codey.com/glossary/iterator-protocol): The next() method contract used to produce a sequence of values.
- [Local Storage](https://www.ask-codey.com/glossary/local-storage): Browser key-value storage that remains after the page and browser are closed.
- [Map](https://www.ask-codey.com/glossary/map-javascript-2): A collection that associates unique keys with values.
- [Memoization](https://www.ask-codey.com/glossary/memoization): Caching a function's result so repeated inputs can return it without recalculation.
- [Mock Function](https://www.ask-codey.com/glossary/mock-function): A test function that records calls and can return controlled values.
- [Module Bundler](https://www.ask-codey.com/glossary/module-bundler): A tool that combines a module graph into files prepared for deployment.
- [Named slot](https://www.ask-codey.com/glossary/named-slot): A slot identified by name so matching host children can be assigned to it.
- [preventDefault()](https://www.ask-codey.com/glossary/preventdefault): An Event method that cancels the browser's default action when the event is cancelable.
- [Promise.all()](https://www.ask-codey.com/glossary/promise-all): A method returning a Promise that fulfills when every input fulfills or rejects when one rejects.
- [Promise.allSettled()](https://www.ask-codey.com/glossary/promise-allsettled): A method returning results for every input after all have settled.
- [Promise.any()](https://www.ask-codey.com/glossary/promise-any): A method returning the first fulfilled input or rejecting if all inputs reject.
- [Promise.race()](https://www.ask-codey.com/glossary/promise-race): A method returning a Promise that settles when the first input settles.
- [Regular Expression](https://www.ask-codey.com/glossary/regular-expression-javascript): A pattern for finding or checking text.
- [Session Storage](https://www.ask-codey.com/glossary/session-storage): Browser key-value storage kept for one tab's browsing session.
- [Set](https://www.ask-codey.com/glossary/set-javascript): A collection with no duplicates and no set order.
- [Shadow host](https://www.ask-codey.com/glossary/shadow-host): An element to which a shadow root is attached.
- [Shadow root](https://www.ask-codey.com/glossary/shadow-root): A document fragment that forms the root of a component's encapsulated shadow tree.
- [Shallow Copy](https://www.ask-codey.com/glossary/shallow-copy-javascript): A new collection that still shares the items inside it with the original.
- [Slot assignment](https://www.ask-codey.com/glossary/slot-assignment): The process that matches a shadow host's children with slots in its shadow tree.
- [Source Map](https://www.ask-codey.com/glossary/source-map): A file connecting transformed code locations back to the original source.
- [stopPropagation()](https://www.ask-codey.com/glossary/stoppropagation): An Event method that stops the event from moving to other elements.
- [Strict Mode](https://www.ask-codey.com/glossary/strict-mode): A JavaScript mode that rejects some error-prone behavior and changes certain runtime rules.
- [structuredClone()](https://www.ask-codey.com/glossary/structuredclone): A function that makes a deep copy of many built-in JavaScript values.
- [Symbol](https://www.ask-codey.com/glossary/symbol): A primitive whose values are always unique and can be used as object property keys.
- [Throttle](https://www.ask-codey.com/glossary/throttle): A technique that limits how often repeated calls may run.
- [Transpiler](https://www.ask-codey.com/glossary/transpiler): A tool that converts source code into another version of source code.
- [Tree Shaking](https://www.ask-codey.com/glossary/tree-shaking): Removing exports that a build can determine are unused.
- [Unit Test](https://www.ask-codey.com/glossary/unit-test-javascript): A small automated check of one focused unit of behavior.
- [WeakMap](https://www.ask-codey.com/glossary/weakmap): A Map-like collection with weakly held object or non-registered Symbol keys.
- [WeakSet](https://www.ask-codey.com/glossary/weakset): A Set-like collection holding objects weakly so it does not prevent garbage collection.
- [Web Worker](https://www.ask-codey.com/glossary/web-worker): A browser worker that runs JavaScript away from the page's main thread.
- [yield](https://www.ask-codey.com/glossary/yield-javascript): Hands back one value from a generator and pauses until the next one is needed.

- Previous level: [Journeyman](https://www.ask-codey.com/glossary/subjects/javascript/journeyman)
- Next level: [Master](https://www.ask-codey.com/glossary/subjects/javascript/master)

[Every JavaScript term, by level](https://www.ask-codey.com/glossary/subjects/javascript)

Source: https://www.ask-codey.com/glossary/subjects/javascript/freelancer
