1. 開発者向けのウェブ技術
  2. Web API
  3. IDBKeyRange
  4. upperBound()

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

IDBKeyRange: upperBound() 静的メソッド

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

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

upperBound()IDBKeyRange インターフェイスのメソッドで、上限のみを持つ新しいキーの範囲を生成します。既定では、端点を含む「閉」です。

構文

js
IDBKeyRange.upperBound(upper)
IDBKeyRange.upperBound(upper, open)

引数

upper

新しいキーの範囲の上限を指定します。

open 省略可

上限が端点を除くかどうかを表します。既定値は false です。

返値

新しく生成されたキーの範囲を表す IDBKeyRange です。

例外

DataError DOMException

引数 upper に割り当てられたキーが有効なキーでないとき投げられます。

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

IDBKeyRange.upperBound("F", true); を使用すると、値 "F" は範囲に含まれず、それより前の値のみが範囲に含まれます。

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

js
function displayData() {
 const keyRangeValue = IDBKeyRange.upperBound("F");
 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("全項目を表示しました。");
 }
 };
}

仕様書

仕様書
Indexed Database API 3.0
# ref-for-dom-idbkeyrange-upperbound1

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /