Function delay

  • Delays the execution of code for a specified number of milliseconds.

    This function returns a Promise that resolves after the specified delay, allowing you to use it with async/await to pause execution.

    Parameters

    • ms: number

      The number of milliseconds to delay.

    • Optionaloptions: DelayOptions

      The options object.

    Returns Promise<void>

    A Promise that resolves after the specified delay.

    async function foo() {
    console.log('Start');
    await delay(1000); // Delays execution for 1 second
    console.log('End');
    }

    foo();

    // With AbortSignal
    const controller = new AbortController();
    const { signal } = controller;

    setTimeout(() => controller.abort(), 50); // Will cancel the delay after 50ms
    try {
    await delay(100, { signal });
    } catch (error) {
    console.error(error); // Will log 'AbortError'
    }
    }