作为一枚前端同学,提及JS 语言的本地数据存储方案,你可能会本能地想到Cookie、sessionStorage、localStorage等。先简单的陪大家回忆一下:
随着前端技术的发展,5G智能时代的到来,将大量数据储存在客户端显得更加合理,直接本地获取数据,这样可以减少从服务器获取数据。面临这种更大数据的存储需求,IndexedDB开始被各大浏览器厂商认可,更多缓存方案也成为了可能。比如,现在小视频非常流行,那么我们可以在用户观看时,通过 IndexedDB 缓存,然后利用 WebRTC 技术实现 P2P 分发的控制。
接下来我们直接进入正题,先认识一下indexedDB 的整体架构,为了方便记忆,根据函数的调用将基本概念串联起来如下图:
IndexedDB 可以存储非常多的数据,比如 Object,files,blobs 等,里面的存储结构是根据 Database 来进行存储的。每个 DB 里面可以有不同的 object stores。IndexedDB 的离线存储的具体结构如下图:
关于IndexedDB这个浏览器离线数据库 ,暂且先介绍到这里,具体 API 的学习,明天继续~