Baseline Widely available
Die openKeyCursor()
-Methode der IDBObjectStore
-Schnittstelle gibt ein IDBRequest
-Objekt zurück, dessen Ergebnis auf einen IDBCursor
gesetzt wird, der verwendet werden kann, um durch übereinstimmende Ergebnisse zu iterieren. Wird verwendet, um mit einem Cursor durch die Schlüssel eines Objektspeichers zu iterieren.
Um festzustellen, ob die Hinzufügungsoperation erfolgreich abgeschlossen wurde, hören Sie auf das success
-Ereignis des Ergebnisses.
openKeyCursor()
openKeyCursor(query)
openKeyCursor(query, direction)
Parameter
query
Optional
Der Schlüsselbereich, der abgefragt werden soll. Wenn ein einzelner gültiger Schlüssel übergeben wird, wird standardmäÃig ein Bereich verwendet, der nur diesen Schlüssel enthält. Wenn nichts übergeben wird, wird standardmäÃig ein Schlüsselbereich verwendet, der alle Datensätze in diesem Objektspeicher auswählt.
direction
Optional
Ein String, der dem Cursor mitteilt, in welche Richtung er sich bewegen soll. StandardmäÃig ist next
. Gültige Werte sind:
next
Der Cursor wird am Beginn des Speichers geöffnet; dann gibt der Cursor alle Datensätze, einschlieÃlich Duplikate, in aufsteigender Reihenfolge der Schlüssel zurück.
nextunique
Der Cursor wird am Beginn des Speichers geöffnet; dann gibt der Cursor alle Datensätze zurück, die keine Duplikate sind, in aufsteigender Reihenfolge der Schlüssel.
prev
Der Cursor wird am Ende des Speichers geöffnet; dann gibt der Cursor alle Datensätze, einschlieÃlich Duplikate, in absteigender Reihenfolge der Schlüssel zurück.
prevunique
Der Cursor wird am Ende des Speichers geöffnet; dann gibt der Cursor alle Datensätze zurück, die keine Duplikate sind, in absteigender Reihenfolge der Schlüssel.
Ein IDBRequest
-Objekt, bei dem nachfolgende Ereignisse im Zusammenhang mit dieser Operation ausgelöst werden.
Wenn die Operation erfolgreich ist, ist der Wert der result
-Eigenschaft der Anfrage:
IDBCursor
-Objekt, das auf den ersten Datensatz zeigt, der der gegebenen Abfrage entsprichtnull
, wenn keine übereinstimmenden Datensätze gefunden wurden.Diese Methode kann eine DOMException
eines der folgenden Typen auslösen:
InvalidStateError
DOMException
Wird ausgelöst, wenn dieser IDBObjectStore
oder IDBIndex
gelöscht wurde.
TransactionInactiveError
DOMException
Wird ausgelöst, wenn die Transaktion dieses IDBObjectStore
inaktiv ist.
DataError
DOMException
Wird ausgelöst, wenn der angegebene Schlüssel oder der Schlüsselbereich ungültig ist.
In diesem einfachen Fragment erstellen wir eine Transaktion, rufen einen Objektspeicher ab und verwenden dann einen Cursor, um durch alle Datensätze im Objektspeicher zu iterieren:
const transaction = db.transaction("name", "readonly");
const objectStore = transaction.objectStore("name");
const request = objectStore.openKeyCursor();
request.onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
// cursor.key contains the key of the current record being iterated through
// note that there is no cursor.value, unlike for openCursor
// this is where you'd do something with the result
cursor.continue();
} else {
// no more results
}
};
Spezifikationen Browser-Kompatibilität Siehe auch
IDBDatabase
IDBTransaction
IDBKeyRange
IDBObjectStore
IDBCursor
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4