Locks: mode プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2022.

Lock インターフェイスの読み取り専用プロパティ mode は、ロックの要求時に LockManager.request() に渡されたアクセスモードを返します。モードは "exclusive" (デフォルト) か "shared" のいずれかです。

"exclusive""shared" のうちのひとつです。

以下の例では、LockManager.request() の呼び出し時にプロパティ mode がどのように渡されるかを示します。LockManagernavigator.locks が返すオブジェクトです。

js
// "exclusive" が表示されるはず (デフォルト)
navigator.locks.request("my_resource", show_lock_properties);

// "exclusive" が表示されるはず
navigator.locks.request(
  "my_resource",
  { mode: "exclusive" },
  show_lock_properties,
);

// "shared" が表示されるはず
navigator.locks.request(
  "my_resource",
  { mode: "shared" },
  show_lock_properties,
);

function show_lock_properties(lock) {
  console.log(`ロック名: ${lock.name}`);
  console.log(`ロックモード: ${lock.mode}`);
}

仕様書

Specification
Web Locks API
# dom-lock-mode

ブラウザーの互換性

BCD tables only load in the browser