IDBCursor: свойство primaryKey
Базовая линия Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2021 года.
Примечание: Эта функция доступна в Web Workers.
Свойство primaryKey только для чтения интерфейса IDBCursor возвращает текущий эффективный ключ курсора. Если курсор в настоящее время итерируется или итерировался за пределами своего диапазона, это свойство устанавливается в undefined. Первичный ключ курсора может быть любого типа данных.
Значение
Значение любого типа данных.
Исключения
-
InvalidStateErrorDOMException -
Выбрасывается, если курсор перемещается или завершен.
Примеры
В этом простом фрагменте мы создаём транзакцию, получаем хранилище объектов, затем используем курсор для итерации по всем записям в хранилище объектов. В каждой итерации мы выводим первичный ключ курсора в консоль.
Курсору не нужно выбирать данные на основе ключа; мы можем просто взять все данные. Также обратите внимание, что в каждой итерации цикла вы можете получить данные из текущей записи под объектом курсора, используя cursor.value.foo. Для полного рабочего примера см. наш пример IDBCursor (Просмотреть пример в браузере).
function displayData() {
const transaction = db.transaction(["rushAlbumList"], "readonly");
const objectStore = transaction.objectStore("rushAlbumList");
objectStore.openCursor().onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const listItem = document.createElement("li");
listItem.textContent = `${cursor.value.albumTitle}, ${cursor.value.year}`;
list.appendChild(listItem);
console.log(cursor.primaryKey);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
primaryKey |
23 | 12 | 10 | 15 | 8 | 25 | 22 | 14 | 8 | 1.5 | 4.4 |
См. также
- Использование IndexedDB
- Начало транзакций:
IDBDatabase - Использование транзакций:
IDBTransaction - Установка диапазона ключей:
IDBKeyRange - Получение и внесение изменений в данные:
IDBObjectStore - Использование курсоров:
IDBCursor - Пример ссылки: Уведомления о задачах (Просмотреть пример в браузере).
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/IDBCursor/primaryKey