IDBObjectStore: getKey()-Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Januar 2020.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die getKey()
-Methode des IDBObjectStore
-Interfaces gibt ein IDBRequest
-Objekt zurück und liefert in einem separaten Thread den Schlüssel, der durch die angegebene Abfrage ausgewählt wurde. Dies dient zum Abrufen bestimmter Datensätze aus einem Objekt-Store.
Wenn ein Schlüssel erfolgreich gefunden wird, wird eine strukturierte Kopie davon erstellt und als Ergebnis des Anforderungsobjekts gesetzt.
Syntax
getKey(key)
Parameter
key
-
Der Schlüssel oder der Schlüsselbereich, der den abzurufenden Datensatz identifiziert.
Rückgabewert
Ein IDBRequest
-Objekt, auf dem nachfolgende Ereignisse im Zusammenhang mit dieser Operation ausgelöst werden.
Wenn die Operation erfolgreich ist, ist der Wert der result
-Eigenschaft der Anfrage der Schlüssel des ersten Datensatzes, der mit dem angegebenen Schlüssel oder Schlüsselbereich übereinstimmt.
Ausnahmen
Diese Methode kann einen der folgenden Typen von DOMException
auslösen:
InvalidStateError
DOMException
-
Wird ausgelöst, wenn das
IDBObjectStore
gelöscht oder entfernt wurde. TransactionInactiveError
DOMException
-
Wird ausgelöst, wenn die Transaktion dieses
IDBObjectStore
inaktiv ist. DataError
DOMException
-
Wird ausgelöst, wenn der angegebene Schlüssel oder Schlüsselbereich einen ungültigen Schlüssel enthält.
Beispiel
let openRequest = indexedDB.open("telemetry"); openRequest.onsuccess = (event) => { let db = event.target.result; let store = db.transaction("net-logs").objectStore("net-logs"); let today = new Date(); let yesterday = new Date(today); yesterday.setDate(today.getDate() - 1); let request = store.getKey(IDBKeyRange(yesterday, today)); request.onsuccess = (event) => { let when = event.target.result; alert(`The 1st activity in last 24 hours was occurred at ${when}`); }; };
Spezifikationen
Specification |
---|
Indexed Database API 3.0> # ref-for-dom-idbobjectstore-getkey①> |
Browser-Kompatibilität
Loading…
Siehe auch
- Verwendung von IndexedDB
- Transaktionen starten:
IDBDatabase
- Transaktionen verwenden:
IDBTransaction
- Ein Schlüsselbereich festlegen:
IDBKeyRange
- Daten abrufen und Änderungen vornehmen:
IDBObjectStore
- Cursor verwenden:
IDBCursor
- Referenzbeispiel: To-do Benachrichtigungen (Beispiel live ansehen).