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

前端页面之间存取值(Html5之sessionStorage、localStorage)

作者:qq_27932435的博客 字体:[增加 减小] 来源:互联网 时间:2017-08-24

本文主要包含html5,页面传递数据,服务器减压等相关知识,qq_27932435的博客希望在学习及工作中可以帮助到您

最近在做项目的时候,遇见一些问题:我在后台取到数据之后,需要把这些数据在N个页面中进行使用,如果每次都要去服务器查找数据,那么就会给服务器带来很大的压力。为了避免重复取带来的压力,遂把数据保存在前端页面中。每次需要取值的时候,只需要在前端页面中取值,而不必去后台服务器中查询数据,那么具体是存在哪里呢?我这里是保存在Html5的web storage,Html5中具有sessionStorage和localStorage两个存储域。

sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并
且当会话结束后数据也随之销毁。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。

而localStorage用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。

Web Storage的概念和cookie相似,区别是它是为了更大容量存储设计的。Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用域,不可以跨域调用。

除此之外,Web Storage拥有setItem,getItem,removeItem,clear等方法,不像cookie需要前端开发者自己封装setCookie,getCookie。

但是Cookie也是不可以或缺的:Cookie的作用是与服务器进行交互,作为HTTP规范的一部分而存在,而Web Storage仅仅是为了在本地“存储”数据而生。

在使用web storage时,我们需要判断浏览器是否支持。通过下面的代码即可判断

if(window.localStorage||typeof window.localStorage != 'undefined'),只要这两个条件中满足其中
之一,那么这个浏览器就是支持localStorage的,我们就可以把数据存储在这里面,然后在其他页面取数据

具体的操作方式

存数据:setItem(key,value)
取数据:getItem(key,value)
通过key移出指定的数据:removeItem(key)
清空数据:clear()

除此之外,localStorage和sessionStorage还提供了key和length属性实现遍历

var storage = window.localStorage; 
for (var i=0, len = storage.length; i  <  len; i++){ 
    var key = storage.key(i); 
    var value = storage.getItem(key); 
console.log(key + "=" + value); }

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

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

相关文章

  • 2018-12-03HTML5实现微信播放全屏的方法详解
  • 2018-12-03H5与传统html的区别
  • 2018-12-03H5的文件域FileReader怎样分段读取文件上传到服务器
  • 2017-08-06HTML5 History API 实现无刷新跳转
  • 2018-12-03HTML5中indexedDB 数据库的相关介绍
  • 2017-08-06使用HTML5 Canvas为图片填充颜色和纹理的教程
  • 2018-12-03HTML5的结构和语义(1):前言_html5教程技巧
  • 2018-12-03详细介绍HTML5技术在风电、光伏等新能源领域的应用(图)
  • 2018-12-03弹性盒模型-容器属性的理解
  • 2018-12-03Mac OS X 上学习HTML+JavaScript+CSS有哪些可以推荐的IDE?

文章分类

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

最近更新的内容

    • 深入解析clearfix清除浮动
    • HTML5 UTF-8 中文乱码的解决方法
    • 在HTML中 root和body?
    • 基于HTML5 Canvas实现矢量工控风机叶轮旋转的示例代码
    • HTML5调用摄像头的示例代码分享
    • HTML5教程:HTML5的基础写法
    • html5实现一个简单的多人飞机游戏实例详解
    • H5视频中背景音乐如何自动播放
    • HTML5自定义data-* data(obj)属性和jquery的data()方法的使用_html5教程技巧
    • 详解HTML5中表单验证的8种方法介绍

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

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