Spec-Zone.ru › Web APIs

IDBFactory

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

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

* Некоторые части этой функции могут иметь различный уровень поддержки.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

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

Интерфейс IDBFactory API IndexedDB позволяет приложениям асинхронно получать доступ к индексированным базам данных. Объект, реализующий интерфейс, — window.indexedDB. С помощью этого объекта вы открываете (то есть создаете и получаете доступ к) и удаляете базу данных, а не напрямую с помощью IDBFactory.

Методы экземпляра

IDBFactory.open()

Запрашивает открытие соединения с базой данных.

IDBFactory.deleteDatabase()

Запрашивает удаление базы данных.

IDBFactory.cmp()

Сравнивает два ключа и возвращает результат, указывающий, какой из них имеет большее значение.

IDBFactory.databases()

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

Пример

В следующем фрагменте кода мы запрашиваем открытие базы данных и включаем обработчики для успешных и ошибочных случаев. Полный рабочий пример см. в нашем приложении To-do Notifications (смотреть пример онлайн).

// Let us open version 4 of our database
const DBOpenRequest = window.indexedDB.open("toDoList", 4);

// these two event handlers act on the database being opened successfully, or not
DBOpenRequest.onerror = (event) => {
  console.error("Error loading database.");
};

DBOpenRequest.onsuccess = (event) => {
  console.info("Database initialized.");

  // store the result of opening the database in the db variable. This is used a lot later on, for opening transactions and suchlike.
  db = DBOpenRequest.result;
};

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

Спецификация
Indexed Database API 3.0
# factory-interface

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
IDBFactory 2423–57 12 1610–16 15 8 2525–57 22 14 8 1.51.5–7.0 4.4≤37–57
cmp 23 12 10 15 8 25 22 14 8 1.5 4.4
databases 72 79 126 60 14 72 126 51 14 11.0 72
deleteDatabase 23 12 10 15 8 25 22 14 8 1.5 4.4
open 23 12 10 15 15
14–15В некоторых выпусках Safari 14 первый вызов indexedDB.open() зависает навсегда, см. ошибку 226547.
8–14
25 22 14 15
14–15В некоторых выпусках Safari на iOS 14 первый вызов indexedDB.open() зависает навсегда, см. ошибку 226547.
8–14
1.5 4.4
worker_support 23 12 37 15 10 25 37 14 10 1.5 4.4

См. также

  • Использование IndexedDB
  • Начало транзакций: IDBDatabase
  • Использование транзакций: IDBTransaction
  • Установка диапазона ключей: IDBKeyRange
  • Получение и изменение данных: IDBObjectStore
  • Использование курсоров: IDBCursor
  • Пример ссылки: To-do Notifications (смотреть пример онлайн).

© 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/IDBFactory

Spec-Zone.ru

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