Spec-Zone.ru › Web APIs

Диапазон ключей IDB: статический метод lowerBound()

Базовая Широко доступная

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2021 года.

  • Узнать больше
  • Полная совместимость
  • Отправить обратную связь

Примечание: Эта функция доступна в Потоках Web Workers.

Статический метод lowerBound() интерфейса IDBKeyRange создаёт новый диапазон ключей только с нижней границей. По умолчанию он включает значение нижней границы и является закрытым.

Синтаксис

IDBKeyRange.lowerBound(lower)
IDBKeyRange.lowerBound(lower, open)

Параметры

lower

Определяет нижнюю границу нового диапазона ключей.

open Необязательный

Указывает, исключает ли нижняя граница значение конечной точки. По умолчанию — false.

Возвращаемое значение

IDBKeyRange: Созданный диапазон ключей.

Исключения

DataError DOMException

Выбрасывается, если ключ, связанный с параметром lower, не является допустимым ключом.

Примеры

В следующем примере показано, как использовать диапазон ключей с нижней границей. Здесь мы объявляем keyRangeValue = IDBKeyRange.lowerBound("F", false); — диапазон, который включает значение "F" и все значения после него. Мы открываем транзакцию (используя IDBTransaction) и хранилище объектов, и открываем курсор с помощью IDBObjectStore.openCursor, объявляя keyRangeValue как необязательное значение диапазона ключей. Это означает, что курсор будет получать только запись с ключом "F" и все, что следует за ней. Если бы мы использовали IDBKeyRange.lowerBound("F", true);, то диапазон не включал бы "F"; только значения после него.

Примечание: Для более полного примера, позволяющего экспериментировать с диапазонами ключей, ознакомьтесь с нашим репозиторием IDBKeyRange-example (посмотреть пример онлайн тоже.)

function displayData() {
  const keyRangeValue = IDBKeyRange.lowerBound("F");

  const transaction = db.transaction(["fThings"], "readonly");
  const objectStore = transaction.objectStore("fThings");

  objectStore.openCursor(keyRangeValue).onsuccess = (event) => {
    const cursor = event.target.result;
    if (cursor) {
      const listItem = document.createElement("li");
      listItem.textContent = `${cursor.value.fThing}, ${cursor.value.fRating}`;
      list.appendChild(listItem);

      cursor.continue();
    } else {
      console.log("Entries all displayed.");
    }
  };
}

Спецификации

Спецификация
API индексированных баз данных 3.0
# ref-for-dom-idbkeyrange-lowerbound①

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
lowerBound_static 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/IDBKeyRange/lowerBound_static

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API