`AbortController` allows aborting asynchronous operations such as network requests or event listeners via its `signal`.
js
const controller = new AbortController();
setTimeout(() => controller.abort(), 5000); // 5s timeout
const res = await fetch(url, { signal: controller.signal });