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 January 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
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).