This is an experimental technologyCheck the Browser compatibility table carefully before using this in production.
The query() method of the LockManager interface returns a Promise which resolves with an object containing information about held and pending locks.
Syntax
var promise<LockManagerSnapshot> = LockManager.query()
Parameters
None.
Return value
A Promise that resolves with a LockManagerSnapshot containing the following properties.
held: An array ofLockobjects for held locks.pending: An array ofLockobjects for pending lock requests.
Example
const state = await navigator.locks.query();
for (const lock of state.held) {
console.log(`held lock: name ${lock.name}, mode ${lock.mode}`);
}
for (const request of state.pending) {
console.log(`requested lock: name ${request.name}, mode ${request.mode}`);
}
Specifications
| Specification | Status | Comment |
| Web Locks APIThe definition of 'query()' in that specification. | Draft | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Chrome
Full support 69 |
Edge
Full support ≤79 |
Firefox
? |
IE
No support No |
Opera
Full support 56 |
Safari
? |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
? |
Opera Android
Full support 48 |
Safari iOS
? |
Samsung Internet Android
Full support 10.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
LockManager.query() by Mozilla Contributors is licensed under CC-BY-SA 2.5.