IndexedDB
indexedDB は Window インターフェイスの読み取り専用プロパティで、アプリケーションが indexed データベースの機能に非同期でアクセスするための機構を提供します。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 24 | 12 | 16 | 8 | 25 | 8 | |
| IDBCursor は IndexedDB API のインターフェイスで、複数レコードを走査したり繰り返し処理をしたりするためのカーソルです。 | 24 | 12 | 16 | 8 | 25 | 8 |
| advance() は IDBCursor インターフェイスのメソッドで、このカーソルが位置を前進させる回数を設定します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| continue() は IDBCursor インターフェイスのメソッドで、カーソルを現在の方向に次の位置、任意のキーパラメーターに一致するキーを持つアイテムまで進めます。キーを指定しない場合、カーソルはその方向に基づいて、すぐ隣の位置へ進みます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| continuePrimaryKey() は IDBCursor インターフェイスのメソッドで、カーソルを、キーが引数として指定するキーと一致し、かつ主キーが引数として指定する主キーと一致するアイテムに進めます。 | 58 | 79 | 10 | 10.1 | 58 | 10.3 |
| delete() は IDBCursor インターフェイスのメソッドで、IDBRequest オブジェクトを返し、別のスレッドで、カーソルの位置を変えずにカーソルが指しているレコードを削除します。レコードが削除されると、カーソルの値は null になります。 | 23 | 12 | 10 | 8 | 25 | 8 |
| direction は IDBCursor インターフェイスの読み取り専用プロパティで、(たとえば IDBObjectStore.openCursor で設定した) カーソルの走査の方向を表す文字列です。取りうる値は、以下の値の節を参照してください。 | 23 | 12 | 10 | 8 | 25 | 8 |
| key は IDBCursor インターフェイスの読み取り専用プロパティで、このカーソルが指しているレコードのキーを返します。カーソルが範囲外の場合は undefined になります。カーソルのキーは任意のデータ型になり得ます。 | 23 | 12 | 10 | 8 | 25 | 8 |
key (binary keys) バイナリキー | 58 | 79 | 51 | 10.1 | 58 | 10.3 |
| primaryKey は IDBCursor インターフェイスの読み取り専用プロパティで、カーソルの現在の実効キーを返します。カーソルが現在反復処理中であったり、範囲外まで反復した場合は、undefined になります。カーソルの主キーは任意のデータ型になり得ます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| request は IDBCursor インターフェイスの読み取り専用プロパティで、カーソルを取得するために使用された IDBRequest を返します。 | 76 | 79 | 77 | 15 | 76 | 15 |
| source は IDBCursor インターフェイスの読み取り専用プロパティで、カーソルが反復している対象の IDBObjectStore または IDBIndex を返します。この関数は、カーソルが反復中であっても、最後まで反復した後であっても、トランザクションが実行中でなくても、null を返したり例外を投げたりすることはありません。 | 23 | 12 | 10 | 8 | 25 | 8 |
| update() は IDBCursor インターフェイスのメソッドで、IDBRequest オブジェクトを返し、別のスレッドで、オブジェクトストア内のカーソルが現在指している値を更新します。カーソルが削除したばかりのレコードを指している場合は、新しいレコードが作成されます。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IndexedDB API の IDBCursorWithValue インターフェイスは、データベース内の複数のレコードを走査・反復するのに用いるカーソルを表します。value プロパティがある以外は、IDBCursor と同じです。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBCursorWithValue インターフェイスの読み取り専用プロパティ value は、それが何であっても、現在のカーソルの値を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 42 | 10 | 25 | 10 |
| IndexedDB API の IDBDatabase インターフェイスは、データベースへの接続を提供します。IDBDatabase オブジェクトで、データベースのトランザクションを開き、データベースのオブジェクト(データ)を生成したり、操作したり、削除したりできます。このインターフェイスはデータベースのバージョンを取得したり、統合したりする唯一の方法を提供します。 | 24 | 12 | 16 | 8 | 25 | 8 |
| close() は IDBDatabase インターフェイスのメソッドで、ただちに戻り、別スレッドで接続を閉じます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| close イベントは、データベースの接続が予期せず閉じられた時 IDBDatabase で発火します。例えば、使用しているストレージが取り外されたり、ユーザーがブラウザーの履歴設定でデータベースを消去した場合に発生します。 | 30 | 79 | 50 | 10.1 | 30 | 10.3 |
| createObjectStore() は IDBDatabase インターフェイスのメソッドで、新しいオブジェクトストアやインデックスを生成して返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| deleteObjectStore() は IDBDatabase インターフェイスのメソッドで、対象のオブジェクトストアを参照するすべてのインデックスとともに、接続しているデータベースにある指定の名前のオブジェクトストアを削除します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| name は IDBDatabase インターフェイスのプロパティで、接続しているデータベース名を含む文字列です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| objectStoreNames は IDBDatabase インターフェイスのプロパティで、現在接続しているデータベースのオブジェクトストア名のリストを含む です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| transaction は IDBDatabase インターフェイスのメソッドで、オブジェクトストアへのアクセスに利用できる IDBTransaction.objectStore メソッドを含むトランザクションオブジェクト (IDBTransaction) を即座に返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| version は IDBDatabase インターフェイスのプロパティで、接続しているデータベースのバージョンを含む 64 ビット整数です。データベースを初めて生成した時、この属性は空文字です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| versionchange イベントは、データベースの構造の変更 (IDBOpenDBRequest または IDBFactory.deleteDatabase で upgradeneeded イベントが送られた) が他のどこか (同じコンピューターの別のウインドウまたはタブの可能性が最も高いでしょう) で要求された時発火します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IDBFactory は IndexedDB API のインターフェイスで、indexedDB への非同期アクセスを提供します。 このインターフェイスを実装するオブジェクトは、window.indexedDB です。このオブジェクトを使用すれば、IDBFactory インターフェイスに直接アクセスせずに、IndexedDB を開いたり (生成したり接続したり)、削除したりできます。 | 24 | 12 | 16 | 8 | 25 | 8 |
| cmp() は IDBFactory インターフェイスのメソッドで、格納や反復処理などの IndexedDB 処理において、2 つの値をキーとして比較し、等しさや順序を決定します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| databases は IDBFactory インターフェイスのメソッドで、利用できるすべてのデータベースの名前とバージョンを格納したオブジェクトの配列を履行される Promise を返します。 | 72 | 79 | 126 | 14 | 72 | 14 |
| deleteDatabase() は IDBFactory インターフェイスのメソッドで、データベースの削除を要求します。このメソッドは直ちに IDBOpenDBRequest オブジェクトを返し、非同期でデータベースの削除処理を行います。 | 23 | 12 | 10 | 8 | 25 | 8 |
| open() は IDBFactory インターフェイスのメソッドで、データベースへの接続を開くことを要求します。 | 23 | 12 | 10 | 15 | 25 | 15 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IndexedDB API の IDBIndex インターフェイスは、データベース内のインデックスへの非同期アクセスを提供します。インデックスはオブジェクトストアの一種で、参照先オブジェクトストアと呼ばれる別のオブジェクトストア内のレコードを検索するためのものです。データを取り出すためにこのインターフェイスを使用します。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBIndex インターフェイスの count() メソッドは、IDBRequest オブジェクトを返し、別スレッドでキー範囲内のレコードの数を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex の get() メソッドは IDBRequest オブジェクトを返し、別スレッドで参照先のオブジェクトストアから指定のキーに対応する値、もしくは key が IDBKeyRange に設定された場合は対応する最初の値を検索します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの getAll() メソッドは、インデックス内の全オブジェクトを取得します。 | 48 | 79 | 44 | 10.1 | 48 | 10.3 |
| IDBIndex インターフェイスの getAllKeys() メソッドは、非同期でインデックス内の全オブジェクトの主キーを取得し、要求オブジェクトの result に設定します。 | 48 | 79 | 44 | 10.1 | 48 | 10.3 |
| IDBIndex インターフェイスの getKey() メソッドは、IDBRequest オブジェクトを返し、別スレッドでこのインデックス内の与えられたキーに対応する主キー、もしくは key が IDBKeyRange に設定された場合は対応する最初の主キーを検索します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの keyPath プロパティは、現在のインデックスのキーパスを返します。null の場合は、このインデックスは自動生成されません。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの読み取り専用プロパティ multiEntry は、インデックスのキーパスを評価した結果が配列になったときこのインデックスがどのようにふるまうかに影響する論理値を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの name プロパティは、このインデックスの名前を表す文字列が入っています。 | 23 | 12 | 10 | 8 | 25 | 8 |
name (renaming through name setter) `name` セッターによる名前変更 | 55 | 79 | 49 | 10.1 | 55 | 10.3 |
| IDBIndex インターフェイスの objectStore プロパティは、現在のインデックスが参照するオブジェクトストアを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの openCursor() メソッドは、IDBRequest オブジェクトを返し、別スレッドで、指定のキー範囲を走査するカーソルを生成します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBIndex インターフェイスの openKeyCursor() メソッドは、IDBRequest オブジェクトを返し、別スレッドで、指定のキー範囲をこのインデックスの順で走査するカーソルを生成します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| 読み取り専用プロパティ unique は、このインデックスが重複するキーを許すかを表す論理値を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IDBKeyRange は IndexedDB API のインターフェイスで、キーとして使われるデータ型における 1 個の連続した範囲を表します。IDBObjectStore および IDBIndex のオブジェクトから、キーまたはキーの範囲を用いてレコードを取り出すことができます。下限および上限により、範囲を制限できます。たとえば、キーが A 〜 Z の範囲にある全ての値を反復できます。 | 24 | 12 | 16 | 8 | 25 | 8 |
| bound() は IDBKeyRange インターフェイスのメソッドで、指定の上限と下限の値を持つ新しいキーの範囲を生成します。範囲は開 (すなわち、端点の値は範囲に含まれない) とすることも、閉 (すなわち、端点の値は範囲に含まれる) とすることもできます。既定では、範囲は閉になります。 | 23 | 12 | 10 | 8 | 25 | 8 |
| includes() は IDBKeyRange インターフェイスのメソッドで、指定のキーがこのキーの範囲に含まれるかを表す論理値を返します。 | 52 | 79 | 47 | 10.1 | 52 | 10.3 |
| lower は IDBKeyRange インターフェイスの読み取り専用プロパティで、キーの範囲の下限を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| lowerBound() は IDBKeyRange インターフェイスのメソッドで、下限のみを持つ新しいキーの範囲を生成します。既定では、端点の値を含む「閉」です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| lowerOpen は IDBKeyRange インターフェイスの読み取り専用プロパティで、下限の値がキーの範囲に含まれるかを表す論理値を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| only() は IDBKeyRange インターフェイスのメソッドで、単一の値からなる新しいキーの範囲を生成します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| upper は IDBKeyRange インターフェイスの読み取り専用プロパティで、キーの範囲の上限を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| upperBound() は IDBKeyRange インターフェイスのメソッドで、上限のみを持つ新しいキーの範囲を生成します。既定では、端点を含む「閉」です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| upperOpen は IDBKeyRange インターフェイスの読み取り専用プロパティで、上限の値がキーの範囲に含まれるかを表す論理値を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IndexedDB API の IDBObjectStore インターフェイスは、データベース内のオブジェクトストアを表します。オブジェクトストア内のレコードは、キーによってソートされています。ソートしておくことで、高速な挿入、検索、そして順番での取り出しを可能にします。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの add() メソッドは、IDBRequest オブジェクトを返し、別スレッドで値の構造化複製を生成し、この複製をオブジェクトストアに保存します。これはオブジェクトストアに新しいレコードを追加する操作です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの読み取り専用プロパティ autoIncrement は、このオブジェクトストアのオートインクリメントフラグの値を返します。 | 23 | 79 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの clear() メソッドは、IDBRequest を生成してすぐに返します。そして、別スレッドでオブジェクトストアをクリアします。これは、オブジェクトストア内のデータをすべて削除する操作です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの count() メソッドは、IDBRequest オブジェクトを返し、別スレッドで、指定されたキーまたは IDBKeyRange にマッチするレコードの総数を返します。引数が指定されない場合は、オブジェクトストア内の全レコードの数を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの createIndex() メソッドは、接続中のデータベースに新しい IDBIndex オブジェクトを作成して返します。これは、データベースの各レコードが持つべき新しいデータポイントを定義するフィールド (列) を定義します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの delete() メソッドは、IDBRequest オブジェクトを返し、別スレッドで指定のレコードまたはレコード群を削除します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの deleteIndex() メソッドは、バージョンの更新時に用いられ、接続中のデータベース内の指定した名前のインデックスを破棄します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの get() メソッドは、IDBRequest オブジェクトを返し、別スレッドで指定のキーによって選択されるオブジェクトを返します。これはオブジェクトストアから特定のレコードを取得する用です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの getAll() メソッドは、指定の引数にマッチするすべてのオブジェクト、または引数が与えられない場合はすべてのオブジェクトが入った IDBRequest オブジェクトを返します。 | 48 | 79 | 44 | 10.1 | 48 | 10.3 |
| IDBObjectStore インターフェイスの getAllKeys() メソッドは、オブジェクトストア内の指定の引数にマッチするすべてのオブジェクトに対応するレコードキー、もしくは引数が与えられない場合はすべてのオブジェクトに対応するレコードキーを取得する IDBRequest を返します。 | 48 | 79 | 44 | 10.1 | 48 | 10.3 |
| IDBObjectStore インターフェイスの getKey() メソッドは、IDBRequest オブジェクトを返し、別スレッドで指定のクエリーで選択されたキーを返します。これはオブジェクトストアから指定のレコードを取得する用です。 | 48 | 79 | 51 | 10.1 | 48 | 10.3 |
| IDBObjectStore インターフェイスの index() メソッドは、現在のオブジェクトストアの名前付きインデックスを開きます。開くと、たとえば、カーソルを用いてレコード群をそのインデックスでソートして取得できます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの読み取り専用プロパティ indexNames は、オブジェクトストア内のオブジェクトに対するインデックスのリストを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの読み取り専用プロパティ keyPath は、このオブジェクトストアのキーパスを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの name プロパティは、このオブジェクトストアの名前を表します。 | 23 | 12 | 10 | 8 | 25 | 8 |
name (renaming through name setter) `name` セッターによる名前変更 | 55 | ≤18 | 49 | 10.1 | 55 | 10.3 |
| IDBObjectStore インターフェイスの openCursor() メソッドは、IDBRequest オブジェクトを返し、別スレッドで新しい IDBCursorWithValue オブジェクトを返します。カーソルを用いてオブジェクトストアを走査するのに用います。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの openKeyCursor() メソッドは、result がマッチした結果の走査に用いることができる IDBCursor に設定される IDBRequest オブジェクトを返します。カーソルを用いてオブジェクトストア内のキーを走査するのに用います。 | 23 | 79 | 44 | 10.1 | 25 | 10.3 |
| IDBObjectStore インターフェイスの put() メソッドは、データベース内の指定のレコードを更新するか、指定のアイテムが存在しない場合は新規レコードを挿入します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBObjectStore インターフェイスの読み取り専用プロパティ transaction は、このオブジェクトストアが属するトランザクションオブジェクトを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IndexedDB API の IDBOpenDBRequest インターフェイスは、固有のイベントハンドラー属性を用い、(IDBFactory.open や IDBFactory.deleteDatabase により行われた) データベースのオープンや削除の要求の結果へのアクセスを提供します。 | 24 | 12 | 16 | 8 | 25 | 8 |
| blocked ハンドラーは、データベースへのオープン中の接続が同じデータベースの versionchange トランザクションをブロックしているとき実行されます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| upgradeneeded イベントは、現在のバージョンより高いバージョン番号でデータベースを開こうとしたとき発火します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IDBRequest は IndexedDB API のインターフェイスで、データベースやデータベースオブジェクトへの非同期の要求の結果へのアクセスをイベントハンドラープロパティによって提供します。データベースの読み書きは、それぞれ要求を用いて行います。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBRequest インターフェイスの読み取り専用プロパティ error は、要求が失敗したときエラーを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| error ハンドラーは、エラーによって要求が失敗したとき実行されます。 | 23 | 12 | 10 | 8 | 25 | 8 |
error (DOMException) `DOMError` ではなく `DOMException` | 48 | ≤18 | 58 | | 48 | |
| IDBRequest インターフェイスの読み取り専用プロパティ readyState は、要求の状態を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBRequest インターフェイスの読み取り専用プロパティ result は、要求の結果を返します。要求が完了していない場合、結果は参照できず、InvalidStateError 例外が投げられます。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBRequest インターフェイスの読み取り専用プロパティ source は、要求元 (インデックスやオブジェクトストアなど) を返します。(IDBFactory.open を呼んだときなど) 要求元が存在しない場合、null を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| success イベントは IDBRequest が成功すると発生します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBRequest インターフェイスの読み取り専用プロパティ transaction は、要求のトランザクション、すなわちこの要求がその中で生成されたトランザクションを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IDBTransaction は IndexedDB API のインターフェイスで、イベントハンドラー属性を使用してデータベース上の静的で非同期のトランザクションを提供します。すべてのデータの読み書きはトランザクション内で行われます。IDBDatabase を使用してトランザクションを開始し、IDBTransaction を使用してトランザクションのモードを設定し (例 readonly または readwrite)、IDBObjectStore にアクセスしてリクエストを作成します。IDBTransaction オブジェクトを使用してトランザクションを中止することもできます。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBTransaction インターフェイスの abort() メソッドは、このトランザクションに関連するデータベース内のオブジェクトへのすべての変更をロールバックします。 | 23 | 12 | 10 | 8 | 25 | 8 |
| abort イベントは IndexedDB のトランザクションがアボートされたとき発火します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBTransaction インターフェイスの commit() メソッドは、実行中のトランザクションで呼ばれると、トランザクションをコミットします。 | 76 | 79 | 74 | 15 | 76 | 15 |
| complete イベントはトランザクションが成功裏に終了した場合に発生します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBTransaction インターフェイスの読み取り専用プロパティ db は、このトランザクションが紐づいたデータベース接続を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBTransaction の読み取り専用プロパティ durability は、トランザクションの生成時に設定された永続性のヒントを返します。これは、トランザクションをコミットする際にパフォーマンスを重視するか永続性を重視するかのユーザーエージェントへのヒントです。 | 83 | 83 | 126 | 15 | 83 | 15 |
| IDBTransaction インターフェイスの IDBTransaction.error プロパティは、トランザクションが失敗したときにエラーの種類を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| error イベントは、リクエストがエラーを返し、そのイベントがトランザクションオブジェクトにバブリングしたとき IDBTransaction で発火します。 | 23 | 12 | 10 | 8 | 25 | 8 |
error (DOMException) `DOMError` ではなく `DOMException` | 48 | ≤18 | 58 | | 48 | |
| IDBTransaction インターフェイスの読み取り専用プロパティ mode は、トランザクションの対象におけるオブジェクトストア内のデータにアクセスする現在のモードを返します。(すなわち、モードが読み取り専用なのか、オブジェクトストアに書き込みを行いたいか) デフォルト値は readonly です。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBTransaction インターフェイスの objectStore() メソッドは、トランザクションの対象に追加済のオブジェクトストアを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBTransaction インターフェイスの読み取り専用プロパティ objectStoreNames は、IDBObjectStore オブジェクトの名前の DOMStringList を返します。 | 48 | 79 | 10 | 10.1 | 48 | 10.3 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
| IndexedDB API の IDBVersionChangeEvent インターフェイスは、IDBOpenDBRequest.upgradeneeded_event イベントハンドラー関数の結果として、データベースのバージョンが変更されたことを表します。 | 24 | 12 | 16 | 8 | 25 | 8 |
| IDBVersionChangeEvent() コンストラクターは、IDBOpenDBRequest.upgradeneeded_event イベントハンドラーを実行した結果データベースのバージョンが変更されたことを表す、新しい IDBVersionChangeEvent オブジェクトを作成します。 | 41 | 79 | 25 | 10 | 41 | 10 |
| IDBVersionChangeEvent インターフェイスの読み取り専用プロパティ newVersion は、データベースの新しいバージョン番号を返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
| IDBVersionChangeEvent インターフェイスの読み取り専用プロパティ oldVersion は、データベースの古いバージョンを返します。 | 23 | 12 | 10 | 8 | 25 | 8 |
worker_support 労働者で利用可能 | 23 | 12 | 37 | 10 | 25 | 10 |
worker_support 労働者で利用可能 | 24 | 12 | 37 | 10 | 25 | 10 |
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このブラウザでは部分的にしか実装されていません
- このバージョンで機能が削除されました (15)
- このバージョンで機能が削除されました (14)
- Safari 14の一部のリリースでは、最初の `indexedDB.open()` の呼び出しが無限に停止してしまう。バグ 226547 を参照のこと。
- このブラウザでは部分的にしか実装されていません
- このバージョンで機能が削除されました (15)
- このバージョンで機能が削除されました (14)
- iOS 14 搭載の Safari の一部のバージョンでは、最初の `indexedDB.open()` の呼び出しが無限に停止してしまう。バグ 226547 を参照のこと。
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (2)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (23)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- このバージョンで機能が削除されました (57)
- ベンダープレフィックス付きで対応: webkit (25)
- ベンダープレフィックス付きで対応: webkit (12)
- このバージョンで機能が削除されました (16)
- ベンダープレフィックス付きで対応: moz (10)
- ベンダープレフィックス付きで対応: webkit (18)
基本構文
let db;
function openDB() {
const DBOpenRequest = window.indexedDB.open("toDoList");
DBOpenRequest.onsuccess = (e) => {
db = DBOpenRequest.result;
};
} 実務での使いどころ
-
IndexedDB の活用
indexedDB は Window インターフェイスの読み取り専用プロパティで、アプリケーションが indexed データベースの機能に非同期でアクセスするための機構を提供します。
注意点
- 古いブラウザでは対応していない場合がある。
実装メモ
- 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。