IDBFactory - 允许应用程序异步访问索引数据库

IDBFactoryIndexedDB API 的接口,允许应用程序异步访问索引数据库。实现改接口的对象是 window.indexedDB。您打开 - 即创建和访问 - 并使用此对象删除数据库,而不是直接使用 IDBFactory

注意: 此特性在 Web Worker 中可用。

方法

IDBFactory.open

用于请求打开连接到数据库

IDBFactory.deleteDatabase

请求删除数据库。

IDBFactory.cmp

比较两个键并返回指示哪一个值更大的结果。

IDBFactory.databases

返回所有可用数据库的列表,包括其名称和版本。

实例

在下面的代码片段中,我们发出打开数据库的请求,处理成功和错误的情况。有关完整的工作示例,请参阅我们的待办事项通知应用程序(查看在线实例。)

var note = document.querySelector("ul");

// 在下一行中,您应该测试出实现 indexedDB 的前缀。
window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
// 如果不在函数中,请不要使用 “var indexedDB = ...”。
// 此外,您可能需要引用一些 window.IDB* 对象:
window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction || window.msIDBTransaction;
window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange || window.msIDBKeyRange;
// (Mozilla 从未为这些对象添加前缀,因此我们不需要使用 window.mozIDB*)

// 让我们打开数据库的第 4 版
var DBOpenRequest = window.indexedDB.open("toDoList", 4);

// 这两个事件处理程序用于当数据库成功/失败打开时,对数据库进行操作
DBOpenRequest.onerror = function(event) {
  note.innerHTML += '<li>加载数据库出错。</li>';
};

DBOpenRequest.onsuccess = function(event) {
  note.innerHTML += '<li>数据库已初始化。</li>';

  // 将数据库的打开结果存储到变量中。它可以以后再使用,例如用于打开事务等。
  db = DBOpenRequest.result;
};

规范

规范 状态 备注
Indexed Database API
IDBFactory 的定义
推荐 -
Indexed Database API 2.0
IDBFactory 的定义
编者的草案 -
Unknown
IDBFactory 的定义
Unknown 引入了 IDBFactory.databases 方法。

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持

24

23 — 57 webkit

支持

16

10 — 16 moz

101157
Available in workers 支持 支持37 未知 支持 未知
cmp

24

23 — 24 webkit

12

16

10 — 16 moz

101157
deleteDatabase

24

23 — 24 webkit

12

16

10 — 16 moz

101157
open

24

23 — 24 webkit

12

16

10 — 16 moz

101157

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持

24

23 — 57 webkit

24

23 — 57 webkit

未知22 未知228
Available in workers 支持 支持 支持37 未知 支持 未知
cmp

24

23 — 24 webkit

24

23 — 24 webkit

支持22 未知228
deleteDatabase

24

23 — 24 webkit

24

23 — 24 webkit

支持22 未知228
open

24

23 — 24 webkit

24

23 — 24 webkit

支持22 未知228

1. 部分的

相关链接