coderef

Atomics.waitAsync()Baseline · Newly available

The Atomics.waitAsync() static method waits for a value in a shared memory location, providing a promise when the expected value is not yet in memory. The waitAsync() method is a non-blocking alternative to Atomics.wait().

Works in the latest version of every major browser, but older devices may not support it yet. Baseline since Nov 11, 2025.

Browser support

DesktopChrome
1–89Not supported
90+Supportedsince Apr 13, 2021
Current: 155
Edge
12–89Not supported
90+Supportedsince Apr 15, 2021
Current: 154
Firefox
1–144Not supported
145+Supportedsince Nov 11, 2025
Current: 157
Safari
1–16.3Not supported
16.4+Supportedsince Mar 27, 2023
Current: 27
MobileChrome Android
18–89Not supported
90+Supportedsince Apr 13, 2021
Current: 155
Firefox Android
4–144Not supported
145+Supportedsince Nov 11, 2025
Current: 157
Safari iOS
1–16.3Not supported
16.4+Supportedsince Mar 27, 2023
Current: 27

How to use

Every current browser supports this, but it only became Baseline on Nov 11, 2025. Use it as a progressive enhancement, or keep a fallback if you support older devices.

Example

Full syntax and examples are on MDN: waitAsync.

Feature detection

JS · check before using
if ("waitAsync" in Atomics || ("prototype" in Atomics && "waitAsync" in Atomics.prototype)) {
  // Atomics.waitAsync is available
}

Documentation (MDN)

Specification