HTML5 IndexedDB本地储存


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

request.addEventListener('success', function(event){

    // 创建数据库实例

    const db = event.target.result;

    // 查找一个ObjectStore

    db.transaction(objectStoreName, wa);

    // wa为'readwrite'时,数据可以读写

    // wa为'readonly'时,数据只读

    const store = transaction.objectStore(objectStoreName);

}, false);

数据库的增删改查:


1

2

3

4

5

6

7

8

9

10

11

12

13

// 添加数据,当关键字存在时数据不会添加

store.add(obj);

// 更新数据,当关键字存在时覆盖数据,不存在时会添加数据

store.put(obj);

// 删除数据,删除指定的关键字对应的数据

store.delete(value);

// 清除ObjectStore

store.clear();

// 查找数据,根据关键字查找指定的数据

const g = store.get(value);

g.addEventListener('success', function(event){

    // 异步查找后的回调函数

}, false);

按索引查找数据


1

2

3

4

5

6

7

8

9

const index = store.index(indexName);

const cursor = index.openCursor(range);

cursor.addEventListener('success', function(event){

    const result = event.target.result;

    if(result){

        result.value       // 数据

        result.continue(); // 迭代,游标下移

    }

}, false);

按索引的范围查找数据


1

2

3

4

5

6

7

8

9

10

11

12

13

14

const index = store.index(indexName);

const cursor = index.openCursor(range);

/**

 * range为null时,查找所有数据

 * range为指定值时,查找索引满足该条件的对应的数据

 * range为IDBKeyRange对象时,根据条件查找满足条件的指定范围的数据

 */

// 大于或大于等于

range = IDBKeyRange.lowerBound(value, true)   // (value, +∞),>  value

range = IDBKeyRange.lowerBound(value, false)  // [value, +∞),>= value

// 小于或小于等于,isOpen:true,开区间;false,闭区间

range = IDBKeyRange.upperBound(value, isOpen)

// 大于或大于等于value1,小于或小于等于value2

IDBKeyRange.bound(value1, value2, isOpen1, isOpen2)

最后,自己封装了一个indexedDB的库,可以参考一下:duan602728596/IndexedDB

以上就是HTML5 IndexedDB本地储存的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

h5如何使用约束验证api

h5的filereader怎样分布读取文件

html中序列化标签的简单介绍(代码实例)

html5容易被忽略的小知识

html5 web 存储详解

服务端主动发送数据回客户端在h5里的实现步奏

wps h5是什么软件

字符编码是什么?html5如何设置字符编码?

如何利用html5 canvas旋转图片?(实例演示)

想学好html5看什么书好

更多相关阅读请进入《indexeddb》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...