Async & Promises
Cancellable Delay
easyJS SpecificJS / TS3 tests
Problem Statement
Implement `cancellableDelay(ms)` that returns an object `{ promise, cancel }`. The promise resolves after `ms` milliseconds, but if `cancel()` is invoked before it settles, the promise immediately rejects with an `'Cancelled'` error and clears the timer.
Examples
Example 1:
const { promise, cancel } = cancellableDelay(100);
cancel();
try { await promise; } catch (e) { console.log(e.message); } // 'Cancelled'JavaScript & TypeScript starter code included
Run this as a live interviewPractice solo
3 test cases. No second person needed.