IndexDB入门

#和local storage的区别

1.不需要JSON.stringify或JSON.parse来处理。

2. 既可以用于网页又可以用于service worker。

3. 可用于二进制文件。

IndexDB包括域名,如果没有createStore会自动创建数据库,并命名,如图keyval-store

具体方法

import {
  get,
  set,
  del,
  update,
  keys,
  values,
  entries,
  createStore,
} from "https://cdn.jsdelivr.net/npm/idb-keyval@6/+esm";

(function init() {
  set("user_id", Date.now())
    .then((res) => {
      console.log("user_id set");
    })

    .catch(() => {
      console.warn();
    });

  const myObj = {
    id: 1,

    email: "sdkjfds@test.com",
  };

  set("info", myObj)
    .then((res) => {
      console.log("successfully set info");
    })

    .catch(() => console.warn);

  get("info")
    .then((data) => {
      console.log(data.id, data.email);
    })

    .catch(() => console.warn);

  update("user_id", (val) => {
    return val - 1000;
  })
    .then((res) => {
      console.log("successfully set info");
    })

    .catch(() => console.warn);

  set("nope", 123);

  del("nope")
    .then(() => console.log("deleted"))
    .catch(() => console.warn);

  keys().then((k) => {
    console.log("key", k);
  });

  values().then((v) => {
    console.log("value", v);
  });

  entries().then((v) => {
    console.log("value", v);
  });
});

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值