IDBIndex: locale-Eigenschaft
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.>
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Die locale-Schreibgeschützte Eigenschaft der IDBIndex-Schnittstelle gibt die Gebietsschemaeinstellung des Indexes zurück (zum Beispiel en-US oder pl), wenn ein locale-Wert bei dessen Erstellung angegeben wurde (siehe das options-Parameter bei IDBObjectStore.createIndex().) Beachten Sie, dass diese Eigenschaft immer das aktuelle in diesem Index verwendete Gebietsschema zurückgibt, mit anderen Worten, sie gibt niemals "auto" zurück.
Wert
Ein String.
Beispiele
Im folgenden Beispiel öffnen wir eine Transaktion und ein Objekt-Depot und erhalten dann den Index lName von einer einfachen Kontaktdatenbank. Dann öffnen wir einen einfachen Cursor auf dem Index mit IDBIndex.openCursor — dies funktioniert genauso wie das Öffnen eines Cursors direkt auf einem ObjectStore mit IDBObjectStore.openCursor, außer dass die zurückgegebenen Datensätze basierend auf dem Index und nicht dem Primärschlüssel sortiert werden.
Der locale-Wert wird in die Konsole protokolliert.
function displayDataByIndex() {
tableEntry.textContent = "";
const transaction = db.transaction(["contactsList"], "readonly");
const objectStore = transaction.objectStore("contactsList");
const myIndex = objectStore.index("lName");
console.log(myIndex.locale);
myIndex.openCursor().onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const tableRow = document.createElement("tr");
for (const cell of [
cursor.value.id,
cursor.value.lName,
cursor.value.fName,
cursor.value.jTitle,
cursor.value.company,
cursor.value.eMail,
cursor.value.phone,
cursor.value.age,
]) {
const tableCell = document.createElement("td");
tableCell.textContent = cell;
tableRow.appendChild(tableCell);
}
tableEntry.appendChild(tableRow);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
Spezifikationen
Derzeit kein Teil einer Spezifikation.
Browser-Kompatibilität
Siehe auch
- Verwendung von IndexedDB
- Starten von Transaktionen:
IDBDatabase - Verwendung von Transaktionen:
IDBTransaction - Festlegen eines Schlüsselbereichs:
IDBKeyRange - Abrufen und Ändern Ihrer Daten:
IDBObjectStore - Verwendung von Cursoren:
IDBCursor - Referenzbeispiel: To-do Notifications (Beispiel live ansehen).