The JavaScript glossary

76 words you’ll meet while learning to code, each explained the way you’d explain it to a friend.

A

API
A way for programs to talk to each other. A web API is usually a URL that returns data (often JSON) instead of a web page.
Argument
The actual value you pass into a function when you call it, like "Mia" in greet("Mia").
Array
An ordered list of values, written with square brackets: [1, 2, 3].
Arrow function
A short way to write a function: (x) => x * 2.
Assignment
Putting a value into a variable with =.
Async / await
Keywords that let you write asynchronous code that reads like normal top-to-bottom code.
Asynchronous
Code that starts a slow task and carries on, dealing with the result later.

B

Back end
The part of an app that runs on a server, behind the scenes.
Block
A group of statements inside curly braces { }.
Boolean
A value that is either true or false.
Bubbling
How an event travels up from the element where it happened, through all its ancestors.
Bug
A mistake in a program that makes it behave wrongly.

C

Callback
A function passed into another function, to be called later.
Camel case
Writing names like firstName, with each new word starting with a capital letter.
Class
A blueprint for creating objects with the same properties and methods.
Closure
A function that remembers the variables from the place where it was created.
Comment
A note in code for humans, which JavaScript ignores (// or /* */).
Console
A panel where you can see output and run code.
Constant
A variable created with const, which can’t be reassigned.
Constructor
The special method in a class that sets up each new instance.

D

Debugging
Finding and fixing bugs.
Destructuring
Unpacking values from arrays or objects into variables: const { name } = user;
DOM
The Document Object Model: the browser’s live, tree-shaped model of a web page.

E

Element
A node in the DOM representing an HTML tag, like a <p> or a <button>.
Encapsulation
Hiding an object’s internal details and exposing only safe ways to use it.
Event
Something that happens on a page, like a click or a key press.
Event delegation
Using one listener on a parent element to handle events from many children.
Event listener
A function that runs when a specific event happens.
Event loop
The mechanism that runs waiting callbacks whenever the call stack is empty.
Expression
Any piece of code that produces a value, like 2 + 3 or name.length.

F

Falsy
A value that counts as false in a condition: false, 0, -0, 0n, "", null, undefined, NaN.
Fetch
The built-in function for requesting data from a URL.
Front end
The part of an app that runs in the browser, which people see and use.
Function
A named, reusable block of code that can take inputs and return an output.

G

Global scope
The outermost scope. Variables here can be seen everywhere.

H

Higher-order function
A function that takes a function as an argument, or returns one.
Hoisting
JavaScript setting up declarations at the start of their scope, before the code runs.

I

Immutable
Unable to be changed. Strings are immutable.
Index
A position in an array or string, counting from 0.
Infinite loop
A loop whose condition never becomes false, so it runs forever.
Inheritance
One class getting the properties and methods of another, using extends.
Instance
An object created from a class with new.
Iteration
One trip through a loop.

J

JSON
JavaScript Object Notation: a text format for storing and sending data.

K

Keyword
A word with a special meaning in JavaScript, like let, if or function.

L

localStorage
Browser storage that keeps strings saved between visits to a website.
Loop
Code that repeats.

M

Method
A function that belongs to an object.
Module
A separate file of code that can export things and import from other modules.

N

NaN
“Not a Number”: the result of math that makes no sense.
Node.js
A program that runs JavaScript outside the browser.
npm
The tool (and registry) for installing JavaScript packages.
null
A value meaning “deliberately empty”.

O

Object
A collection of key-value pairs (properties).
Operator
A symbol that does something to values, like +, === or &&.

P

Parameter
A placeholder in a function’s definition, which receives an argument.
Primitive
A simple, single value: string, number, boolean, undefined, null, bigint or symbol.
Promise
An object representing a value that will be ready in the future (or an error).
Property
A key-value pair inside an object.
Prototype
The object another object links to, where it looks for properties it doesn’t have.

R

Reference
How objects and arrays are stored: two variables can point to the same one.
Render
To draw (or redraw) the page from the app’s data.
Return value
The value a function gives back, using return.

S

Scope
The region of code where a variable can be seen and used.
Spread / rest
The ... syntax, which unpacks (spread) or packs up (rest) values.
State
The data an app keeps track of, which decides what’s shown.
Statement
A single instruction, usually ending with a semicolon.
String
A piece of text, written in quotes.
Syntax
The grammar rules of a programming language.

T

Template literal
A string in backticks that can include values with ${ }.
Ternary operator
A one-line if/else: condition ? a : b.
this
A keyword for the object a function was called on. It depends on how the function is called.
Truthy
Any value that counts as true in a condition (everything that isn’t falsy).
Type coercion
JavaScript automatically converting a value from one type to another.

U

undefined
The value of a variable that hasn’t been given a value.

V

Variable
A named box that holds a value.

Words stick better with practice

CurlyScript teaches every one of these words with short questions and an explanation after every answer.

Start learning