LockManager.query()
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The query() method of the LockManager interface returns a Promise that resolves with an object containing information about held and pending locks.
Syntax
LockManager.query()
Parameters
None.
Return value
  A Promise that resolves with an object containing a snapshot of the LockManager state.
  The object has the following properties:
Exceptions
This method may return a promise rejected with a DOMException of one of the following types:
InvalidStateErrorDOMException- 
    
If the environments document is not fully active.
 SecurityErrorDOMException- 
    
If a lock manager cannot be obtained for the current environment.
 
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 | 
|---|
| Web Locks API  # api-lock-manager-query  | 
Browser compatibility
BCD tables only load in the browser