このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
IDBObjectStore: getAll() メソッド
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年1月.
IDBObjectStore インターフェイスのgetAll() メソッドは、指定の引数にマッチするすべてのオブジェクト、または引数が与えられない場合はすべてのオブジェクトが入ったIDBRequest オブジェクトを返します。
値が正常に見つかった場合は、その構造化複製を作成し、要求オブジェクトのresult に設定します。
このメソッドは、以下の場合に同じ結果になります。
- レコードがデータベースに存在しない場合
- レコードの値が
undefinedの場合
これらを区別するには、以下のメソッドを使用できます。
openCursor()メソッドを同じキーで使用します。このメソッドはレコードが存在すればカーソルを返し、存在しなければカーソルを返しません。count()メソッドを同じキーで使用します。このメソッドは行が存在すれば 1 を、存在しなければ 0 を返します。
In this article
構文
getAll()getAll(query)getAll(query, count)引数
query省略可問い合わせを行うキーまたは
IDBKeyRangeです。何も渡さない場合、デフォルトはオブジェクトストア内の全レコードを選択するキー範囲です。count省略可複数の値が見つかった場合に返す値の数を指定します。
0未満の場合や2^32 - 1超の場合は、TypeError例外が投げられます。
返値
この操作に関係する今後のイベントが発火するIDBRequest オブジェクトです。
操作に成功した場合は、この要求のresult プロパティの値は与えられた問い合わせにマッチする全レコード (count が指定された場合はcount の数まで) の値のArray になります。
例外
このメソッドは、以下の種類のいずれかのDOMException を投げる可能性があります。
TransactionInactiveErrorDOMExceptionこの
IDBObjectStoreのトランザクションが実行中でないとき投げられます。DataErrorDOMException指定のキーまたはキー範囲が無効なキーを含むか
nullであるとき投げられます。InvalidStateErrorDOMExceptionIDBObjectStoreが削除されたか取り除かれたとき投げられます。TypeError引数
countが0から2^32 - 1の範囲 (両端を含む) にないとき投げられます。
仕様書
| Specification |
|---|
| Indexed Database API 3.0> # ref-for-dom-idbobjectstore-getall①> |
ブラウザーの互換性
関連情報
- IndexedDB の使用
- トランザクションの開始:
IDBDatabase - トランザクションの使用:
IDBTransaction - キー範囲の設定:
IDBKeyRange - データの取得と変更:
IDBObjectStore - カーソルの使用:
IDBCursor - リファレンス例:To-do Notifications (動く例を見る)