A decorator is a function that takes a function and returns a new one. Build one from scratch, then see why functools.wraps matters.
A list used as a default argument is created once, not once per call. Here is what that looks like when it goes wrong, and the one line fix.
What the star and the double star actually do, the order the parameters have to be in, and how to pass arguments straight through to another function.
AbortController is not only for fetch. Any promise you write can accept a signal, and one controller can cancel a whole group of them.
A tag function receives the static strings and the interpolated values separately, which is exactly what you need to escape input safely.
Object.freeze protects one level. Nested objects stay writable, and in sloppy mode the failed writes do not even throw.
Every property has writable, enumerable and configurable flags. Knowing them explains hidden properties, read only values and computed fields.
The JSON round trip silently drops Dates, Maps, Sets, undefined and typed arrays. structuredClone keeps them, and it handles cycles.
A generator pauses at every yield and does no work until you ask for the next value. That makes infinite sequences and lazy pipelines ordinary code.
A Proxy intercepts reads and writes on an object. Typos become errors, missing keys get defaults, and every access can be logged.