This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The Lock interface of the the Web Locks API provides the name and mode of a previously requested lock, which is received in the callback to LockManager.request()


Lock.mode Read only
Returns the access mode passed to LockManager.request() when the lock was requested. The mode is either "exclusive" (the default) or "shared".
Lock.name Read only
Returns the name passed to LockManager.request() when the lock was requested.

The following examples show how the mode and name properties are passed in the call to LockManager.request(). LockManager is the object returned by navigator.locks.

navigator.locks.request("net_db_sync", show_lock_properties);
navigator.locks.request("another_lock", {mode: "shared"}, show_lock_properties);

function show_lock_properties(lock) {
  console.log(`The lock name is: ${lock.name}`);
  console.log(`The lock mode is: ${lock.mode}`);


Specification Status Comment
The definition of 'Lock' in that specification.
Unknown Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support69 ? ? ?56 ?
mode69 ? ? ?56 ?
name69 ? ? ?56 ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support6969 ? ?56 ? ?
mode6969 ? ?56 ? ?
name6969 ? ?56 ? ?

Document Tags and Contributors

Contributors to this page: jpmedley
Last updated by: jpmedley,