Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
IDBIndex インターフェイスの getKey() メソッドは、IDBRequest オブジェクトを返し、別スレッドでこのインデックス内の与えられたキーに対応する主キー、もしくは key が IDBKeyRange に設定された場合は対応する最初の主キーを検索します。
主キーが見つかった場合は、これを要求オブジェクトの result に設定します。IDBIndex.get と違ってレコード全体は返さないことに注意してください。
メモ: この機能はウェブワーカー内で利用可能です。
取得するレコードを特定するキーまたは IDBKeyRange です。この値が null または省略された場合は、ブラウザーは無限のキー範囲を使用します。
この操作に関係する今後のイベントが発火する IDBRequest オブジェクトです。
操作に成功した場合は、この要求の result プロパティの値は与えられたキーもしくはキー範囲にマッチする最初のレコードのキーになります。
このメソッドは、以下の種類のいずれかの DOMException を投げる可能性があります。
TransactionInactiveError DOMExceptionこの IDBIndex のトランザクションが実行中でないとき投げられます。
DataError DOMException与えられたキーまたはキー範囲が無効なキーを含むとき投げられます。
InvalidStateError DOMExceptionこの IDBIndex が削除されたか取り除かれたとき投げられます。
以下の例では、トランザクションとオブジェクトストアを開き、シンプルな連絡先データベースからインデックス lName を取得します。そして、このインデックスで IDBIndex.openCursor により基本的なカーソルを開きます。これは、返されるレコードが主キーではなくこのインデックスに基づいてソートされる以外、ObjectStore で直接 IDBObjectStore.openCursor を用いてカーソルを開くのと同じように動きます。
そして、myIndex.getKey('Bungle') を用いて lName が Bungle であるレコードの主キーを取得し、success コールバックで要求の結果をコンソールに記録します。
最後に、各レコードを走査し、データを HTML テーブルに挿入します。動く例全体は、IndexedDB-examples デモレポジトリーを参照してください。(動く例を見る)
| Indexed Database API 3.0 # ref-for-dom-idbindex-getkey① |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2023年9月4日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.