LocalStorage与IndexDB的使用
LocalStorage
localstorage 用于本地存储,解决了cookie的存储空间不足问题,cookie存储空间一般为4K,而localstorage一般在浏览器分配的空间大小为5M,(不同的浏览器分配的存储空间大小不等)。
localstorage与sessionStorage相比,生命周期更长,便于数据长期存储。localstorage值类型限定为String;在浏览器隐私模式下是不可读取的;(存储内容过多会导致页面卡顿);不会被爬虫爬取!!
// localstorage写入
var data = {
name:'xiaoge',
age:'xx'
};
window.localStorage.setItem('dataName', data);
//或者
localStorage.setItem('dataName', data);
//localstorage读取
var data2= window.localStorage.getItem("dataName");
//或者
var data2= localStorage.getItem("dataName");
IndexDB
Index DB是一种前端数据库,代替了已经废弃的Web SQL Database,与localstorage相比,indexDB的存储容量受全局限制和组限制俩个元素的限制,但是对于一般前端需要存储的数据已经足够。
更多详细的接口和规范到 网址.查看,在本文章只进行简单的例子展示。
// indexdb初始化
init(){
var indexedDB =window.indexedDB ||window.webkitIndexedDB ||window.mozIndexedDB || window.msIndexedDB;
if (!indexedDB) {
console.log('你的浏览器不支持IndexedDB');
}
var IDBOpenDBRequest = indexedDB.open('datalist', 1);
IDBOpenDBRequest.onupgradeneeded = (e)=> {
console.log("初始化或版本变动")
this.db = e.target.result; // 获取到对应的 IDBDatabase实例。
date=e.target.result;
// console.log('db');
if (!this.db.objectStoreNames.