- 非关系型数据库
- storage最多只能存放2.5M-5M数据,所以浏览器本地储存需要使用indexedDB
- indexedDB存储js对象,异步执行
兼容写法
var indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB || window.msIndexedDB;
indexedDB 全局对象获取方式
var indexedDB = window.indexedDB;
- 发出数据库请求
var indexedDB = window.indexedDB;
var openRequest = indexedDB.open('myDataBase',1); // 数据库名字和版本号
- 监听数据库请求
//监听请求成功事件
openRequest.onsuccess = function(){
console.log('打开数据库成功');
}
//监听请求失败事件
openRequest.onerror = function(){
console.log('打开数据库失败');
}
openRequest.onupgradeneeded = function(){
console.log('数据库更新成功');
}
注意:在版本号小于之前版本号时,数据库打开失败。
- 得到打开的数据库对象
openRequest.onsuccess = function(event){
console.log('打开数据库成功');
var db = this.result;
// var db = event.target.result;
}
- objectstore 存储空间
- 必须卸载upgradeneeded里面