使用localStorage替代cookie做本地存储


Posted in Javascript onSeptember 25, 2019

因为cookie存储有限,加上cookie每次都要上传到服务器,浪费了带宽不说,而且伤害了感情。

基于HTML5的localStorage可能能给你带的新的希望,而且最大支持不超过5MB的数据存储。可惜的是,IE方面只支持IE8以上的版本。

使用localStorage替代cookie做本地存储

我花了一点时间就最近浏览记录的存储简单的写了一个javascript代码来做演示

late = {
 storage : {},
 isinit : 0,
 maxnum : 10,
 key : 'vestigial',
 _init:function(){
  if (late.isinit === 1) {
   return true;
  } else if (late.isinit === 0 && window.localStorage) {
   late.isinit = 1;
   late.storage = window.localStorage;
   return true;
  } else {
   return false;
  }
 },
 
 get:function(){
  if(late._init()){
   var data = late.storage.getItem(late.key);
   return JSON.parse(data);
  }else{
   return false;
  }
 },
 
 set:function(value){
  if(late._init()){
   var data = late.storage.getItem(late.key); 
   data = JSON.parse(data);
   if(data === null){
    data = [];
   }
   if (data.length === 10) {
    data.shift();
   }
   data.push(value);
   data = JSON.stringify(data);
   late.storage.setItem(late.key, data);
   return true;
  }else{
   return false;
  }
 }
};
 
var obj = {
  id:2, 
  title:'标题1', 
  url:'http://www.baidu.com'
 };
late.set(obj);
var each = late.get();
var eachlength = each.length;
for(i=0; i<eachlength; i++){
 document.writeln(JSON.stringify(each[i]));
}

实在不行的话还可以使用flash来存储,不建议使用cookie。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js调用activeX获取u盘序列号的代码
Nov 21 Javascript
toggle一个div显示或隐藏且可扩展成自定义下拉框
Sep 12 Javascript
JS循环遍历JSON数据的方法
Jul 08 Javascript
JavaScript截取、切割字符串的技巧
Jan 07 Javascript
JavaScript中的this机制
Jan 30 Javascript
VueJs 将接口用webpack代理到本地的方法
Nov 27 Javascript
vue项目中api接口管理总结
Apr 20 Javascript
详解基于vue-cli3快速发布一个fullpage组件
Mar 08 Javascript
js图片无缝滚动插件使用详解
May 26 Javascript
浅谈Webpack4 Tree Shaking 终极优化指南
Nov 18 Javascript
Vue通过provide inject实现组件通信
Sep 03 Javascript
Vue页面跳转传递参数及接收方式
Sep 09 Javascript
JavaScript使用localStorage存储数据
Sep 25 #Javascript
Vue路由守卫之路由独享守卫
Sep 25 #Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
Sep 25 #Javascript
Vue利用Blob下载原生二进制数组文件
Sep 25 #Javascript
layui实现图片虚拟路径上传,预览和删除的例子
Sep 25 #Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
Sep 25 #Javascript
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
Sep 25 #Javascript
You might like
PHP 获取MySQL数据库里所有表的实现代码
2011/07/13 PHP
php空间不支持socket但支持curl时recaptcha的用法
2011/11/07 PHP
PHP的array_diff()函数在处理大数组时的效率问题
2011/11/27 PHP
Linux中为php配置伪静态
2014/12/17 PHP
php读取远程gzip压缩网页的方法
2014/12/29 PHP
PHP文件管理之实现网盘及压缩包的功能操作
2017/09/20 PHP
SWFObject 2.1以上版本语法介绍
2010/07/10 Javascript
DOM 中的事件处理介绍
2012/01/18 Javascript
jquery网页元素拖拽插件效果及实现
2013/08/05 Javascript
在Python中使用glob模块查找文件路径的方法
2015/06/17 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
Js遍历键值对形式对象或Map形式的方法
2016/08/08 Javascript
微信小程序如何获知用户运行小程序的场景教程
2017/05/17 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
微信小程序module.exports模块化操作实例浅析
2018/12/20 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
2019/06/07 Javascript
js实现计时器秒表功能
2019/12/16 Javascript
原生js实现瀑布流效果
2020/03/09 Javascript
JavaScript React如何修改默认端口号方法详解
2020/07/28 Javascript
使用python装饰器验证配置文件示例
2014/02/24 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
Python 使用 prettytable 库打印表格美化输出功能
2019/12/26 Python
解决pycharm同一目录下无法import其他文件
2020/02/12 Python
Python爬取数据并实现可视化代码解析
2020/08/12 Python
HTML5之SVG 2D入门11—用户交互性(动画)介绍及应用
2013/01/30 HTML / CSS
波兰在线运动商店:YesSport
2020/07/23 全球购物
颇特女士:NET-A-PORTER(直邮中国)
2020/07/11 全球购物
软件工程师面试题
2012/06/25 面试题
通息工程毕业生自荐信
2013/10/16 职场文书
宣传部部长竞选演讲稿
2014/04/26 职场文书
体育课外活动总结
2014/07/08 职场文书
实验心得体会
2014/09/05 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
中学教师个人总结
2015/02/10 职场文书
教你用eclipse连接mysql数据库
2021/04/22 MySQL