IDBIndex: getAllKeys() メソッド
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.
IDBIndex
インターフェイスの getAllKeys()
メソッドは、非同期でインデックス内の全オブジェクトの主キーを取得し、要求オブジェクトの result
に設定します。
構文
getAllKeys()
getAllKeys(query)
getAllKeys(query, count)
引数
query
省略可-
取得するキーを特定するキーもしくは
IDBKeyRange
です。この値がnull
または省略された場合は、ブラウザーは無限のキー範囲を用います。 count
省略可-
返すレコードの数です。この値が問い合わせ結果のレコード数を超える場合は、ブラウザーは最初のアイテムのみを取得します。この値が
0
未満や2^32 - 1
超の場合は、TypeError
例外が投げられます。
返値
この操作に関係する今後のイベントが発火する IDBRequest
オブジェクトです。
操作に成功した場合は、この要求の result
プロパティの値は与えられたクエリーにマッチする全レコード (count
が指定された場合は count
の値まで) のキーの Array
になります。
例外
このメソッドは、以下の種類のいずれかの DOMException
を投げる可能性があります。
TransactionInactiveError
DOMException
-
この
IDBIndex
のトランザクションが実行中でないとき投げられます。 InvalidStateError
DOMException
-
この
IDBIndex
が削除されたか取り除かれたとき投げられます。
引数 count
が 0
から 2^32 - 1
の範囲 (両端を含む) 外のときは、TypeError
例外が投げられます。
例
const myIndex = objectStore.index("index");
const getAllKeysRequest = myIndex.getAllKeys();
getAllKeysRequest.onsuccess = () => {
console.log(getAllKeysRequest.result);
};
仕様書
Specification |
---|
Indexed Database API 3.0 # ref-for-dom-idbindex-getallkeys① |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
- IndexedDB の使用
- トランザクションの開始:
IDBDatabase
- トランザクションの使用:
IDBTransaction
- キー範囲の設定:
IDBKeyRange
- データの取得と変更:
IDBObjectStore
- カーソルの使用:
IDBCursor
- リファレンス例: To-do Notifications (動く例を見る)