Async/Await
Async/Await — Async/await is syntactic sugar over Promises that makes asynchronous code read like synchronous code. An `async` function always returns a Promise. The `await` keyword pauses execution until a Promise settles. Error handling uses standard try/catch. Async/await was introduced in ES2017 and has become the standard way to write asynchronous JavaScript, replacing both callbacks and raw Promise chains. This term relates to the Promise category of the reference. You will meet async/await in practice when working with APIs such as Promise.prototype.then(), Promise.prototype.catch(), Promise.prototype.finally(), Promise.resolve(). Related terms: Closure, Hoisting, Event Loop, Prototype Chain, Temporal Dead Zone (TDZ), IIFE (Immediately Invoked Function Expression). Understanding async/await makes the rest of the JavaScript documentation noticeably easier to follow, because the concept recurs across methods, guides, and error messages. Look up more definitions in the JavaScript glossary.