• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5中Localstorage的使用教程_html5教程技巧

HTML5中Localstorage的使用教程_html5教程技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,Localstorage等相关知识,匿名希望在学习及工作中可以帮助到您
什么是localstorage

  前几天在老项目中发现有对cookie的操作觉得很奇怪,咨询下来是要缓存一些信息,以避免在URL上面传递参数,但没有考虑过cookie会带来什么问题:

  ① cookie大小限制在4k左右,不适合存业务数据
  ② cookie每次随HTTP事务一起发送,浪费带宽

  我们是做移动项目的,所以这里真实适合使用的技术是localstorage,localstorage可以说是对cookie的优化,使用它可以方便在客户端存储数据,并且不会随着HTTP传输,但也不是没有问题:

  ① localstorage大小限制在500万字符左右,各个浏览器不一致
  ② localstorage在隐私模式下不可读取
  ③ localstorage本质是在读写文件,数据多的话会比较卡(firefox会一次性将数据导入内存,想想就觉得吓人啊)
  ④ localstorage不能被爬虫爬取,不要用它完全取代URL传参

  瑕不掩瑜,以上问题皆可避免,所以我们的关注点应该放在如何使用localstorage上,并且是如何正确使用。
localstorage的使用
  基础知识

  localstorage存储对象分为两种:

  ① sessionStrage: session即会话的意思,在这里的session是指用户浏览某个网站时,从进入网站到关闭网站这个时间段,session对象的有效期就只有这么长。

  ② localStorage: 将数据保存在客户端硬件设备上,不管它是什么,意思就是下次打开计算机时候数据还在。

  两者区别就是一个作为临时保存,一个长期保存。

  这里来一段简单的代码说明其基本使用:

  1. <div id="msg" style="margin: 10px 0; border: 1px solid black; padding: 10px; width: 300px;
  2. height: 100px;">
  3. div>
  4. <input type="text" id="text" />
  5. <select id="type">
  6. <option value="session">sessionStorageoption>
  7. <option value="local">localStorageoption>
  8. select>
  9. <button onclick="save();">
  10. 保存数据button>
  11. <button onclick="load();">
  12. 读取数据button>
  13. <script type="text/javascript">
  14. var msg = document.getElementById('msg'),
  15. text = document.getElementById('text'),
  16. type = document.getElementById('type');
  17. function save() {
  18. var str = text.value;
  19. var t = type.value;
  20. if (t == 'session') {
  21. sessionStorage.setItem('msg', str);
  22. } else {
  23. localStorage.setItem('msg', str);
  24. }
  25. }
  26. function load() {
  27. var t = type.value;
  28. if (t == 'session') {
  29. msg.innerHTML = sessionStorage.getItem('msg');
  30. } else {
  31. msg.innerHTML = localStorage.getItem('msg');
  32. }
  33. }
  34. script>

 真实场景

  实际工作中对localstorage的使用一般有以下需求:

  ① 缓存一般信息,如搜索页的出发城市,达到城市,非实时定位信息

  ② 缓存城市列表数据,这个数据往往比较大

  ③ 每条缓存信息需要可追踪,比如服务器通知城市数据更新,这个时候在最近一次访问的时候要自动设置过期

  ④ 每条信息具有过期日期状态,在过期外时间需要由服务器拉取数据

  1. define([], function () {
  2. var Storage = _.inherit({
  3. //默认属性
  4. propertys: function () {
  5. //代理对象,默认为localstorage
  6. this.sProxy = window.localStorage;
  7. //60 * 60 * 24 * 30 * 1000 ms ==30天

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03大势所趋 HTML5成为Web开发者最关心的技术
  • 2018-12-03Tkinter教程之Canvas篇(4)
  • 2018-12-03探索HTML5本地存储功能运用技巧
  • 2017-08-06HTML5 Canvas 起步(2) - 路径
  • 2018-12-03如何用canvas绘制矩形?canvas画矩形的两种方法介绍
  • 2018-12-03html5 meter标签是什么意思?html5 meter标签的用法及属性介绍
  • 2018-12-03html5声频audio和视频video等新特性详细说明_html5教程技巧
  • 2018-12-03关于 HTML5 视频编码,听说 Google 没那么努力推 WebM 了,听说 Mozilla 貌似要采用 H.264 了,这是不是意味著 H.264 最终会胜出?
  • 2018-12-03使用canvas实现迷宫游戏
  • 2017-08-06用HTML5实现网站在windows8中贴靠的方法

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 关于HTML5 input placeholder 的颜色修改
    • 使用vlc解决在web上点击播放ts格式视频
    • HTML5中SVG 2D笔画与填充的详细介绍
    • Web 端如何调用手机的相册和照相机?
    • 想学习 HTML5 ,应该怎么入门? 有什么好点的书推荐的吗?
    • 手机端怎样用rem+scss做适配
    • html5手机触屏touch事件的详细介绍
    • HTML5 Video/Audio播放本地文件
    • html5+css3实现一款注册表单实例_html5教程技巧
    • 大公司或专业团队目前流行的前端工具有什么?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有