IDBKeyRange: upper プロパティ

Baseline Widely available

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

メモ: この機能はウェブワーカー内で利用可能です。

upperIDBKeyRange インターフェイスの読み取り専用プロパティで、キーの範囲の上限を返します。

キーの範囲の上限です。(任意の型になり得ます)

以下の例では、キーの範囲の使用法を示します。keyRangeValue = IDBKeyRange.upperBound("F", "W", true, true); と定義します。上限と下限の両方が開 (true) として宣言されているので、これは "F""W" の間の全ての値を含むが、これらの値は含まない範囲です。(IDBTransaction により) トランザクションを開き、オブジェクトストアを開き、省略可能なキーの範囲の値を keyRangeValue として IDBObjectStore.openCursor でカーソルを開きます。

キーの範囲を宣言した後、その upper プロパティの値をコンソールに記録します。これは "W" になるはずです。

メモ: キーの範囲に関する実験ができるより完全な例は、IDBKeyRange-example リポジトリーを参照してください。(動く例も見る)

js
function displayData() {
  const keyRangeValue = IDBKeyRange.bound("F", "W", true, true);
  console.log(keyRangeValue.upper);

  const transaction = db.transaction(["fThings"], "readonly");
  const objectStore = transaction.objectStore("fThings");

  objectStore.openCursor(keyRangeValue).onsuccess = (event) => {
    const cursor = event.target.result;
    if (cursor) {
      const listItem = document.createElement("li");
      listItem.textContent = `${cursor.value.fThing}, ${cursor.value.fRating}`;
      list.appendChild(listItem);

      cursor.continue();
    } else {
      console.log("全項目を表示しました。");
    }
  };
}

仕様書

Specification
Indexed Database API 3.0
# ref-for-dom-idbkeyrange-upper①

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
upper

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報