IDBIndex: getAllKeys() メソッド
IDBIndex
インターフェイスの getAllKeys()
メソッドは、非同期でインデックス内の全オブジェクトの主キーを取得し、要求オブジェクトの result
に設定します。
構文
js
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
例外が投げられます。
例
js
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 (動く例を見る)