html5 sessionStorage会话存储_动力节点Java学院整理


Posted in HTML / CSS onJuly 06, 2017

sessionStorage 是HTML5新增的一个会话存储对象,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。本篇主要介绍sessionStorage(会话存储)的使用方式。包括添加、修改、删除等操作。

sessionStorage 是HTML5新增的一个会话存储对象,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。

在JavaScript语言中可通过 window.sessionStorage 或sessionStorage 调用此对象。

特点

1) 同源策略限制。若想在不同页面之间对同一个sessionStorage进行操作,这些页面必须在同一协议、同一主机名和同一端口下。(IE 8和9存储数据仅基于同一主机名,忽略协议(HTTP和HTTPS)和端口号的要求)

2) 单标签页限制。sessionStorage操作限制在单个标签页中,在此标签页进行同源页面访问都可以共享sessionStorage数据。

3) 只在本地存储。seesionStorage的数据不会跟随HTTP请求一起发送到服务器,只会在本地生效,并在关闭标签页后清除数据。(若使用Chrome的恢复标签页功能,seesionStorage的数据也会恢复)。

4) 存储方式。seesionStorage的存储方式采用key、value的方式。value的值必须为字符串类型(传入非字符串,也会在存储时转换为字符串。true值会转换为"true")。

5) 存储上限限制:不同的浏览器存储的上限也不一样,但大多数浏览器把上限限制在5MB以下。

浏览器最小版本支持

支持sessionStorage的浏览器最小版本:IE8、Chrome 5。

适合场景

sessionStorage 非常适合SPA(单页应用程序),可以方便在各业务模块进行传值。

属性

readonly intsessionStorage.length:返回一个整数,表示存储在 sessionStorage对象中的数据项(键值对)数量。

方法

string sessionStorage.key(int index) :返回当前sessionStorage 对象的第index序号的key名称。若没有返回null。 stringsessionStorage.getItem(string key) :返回键名(key)对应的值(value)。若没有返回null。 voidsessionStorage.setItem(string key, string value) :该方法接受一个键名(key)和值(value)作为参数,将键值对添加到存储中;如果键名存在,则更新其对应的值。 voidsessionStorage.removeItem(string key) :将指定的键名(key)从sessionStorage 对象中移除。 voidsessionStorage.clear() :清除sessionStorage 对象所有的项。

存储数据

采用setItem()方法存储

sessionStorage.setItem('testKey','这是一个测试的value值'); // 存入一个值

通过属性方式存储  

sessionStorage['testKey'] = '这是一个测试的value值';

读取数据

通过getItem()方法取值

sessionStorage.getItem('testKey'); // => 返回testKey对应的值

通过属性方式取值

sessionStorage['testKey']; // => 这是一个测试的value值

存储Json对象

sessionStorage也可存储Json对象:存储时,通过JSON.stringify()将对象转换为文本格式;读取时,通过JSON.parse()将文本转换回对象。

var userEntity = {
    name: 'tom',
    age: 22
};
// 存储值:将对象转换为Json字符串
sessionStorage.setItem('user', JSON.stringify(userEntity));
// 取值时:把获取到的Json字符串转换回对象
var userJsonStr = sessionStorage.getItem('user');
userEntity = JSON.parse(userJsonStr);
console.log(userEntity.name); // => tom

以上所述是小编给大家介绍的html5 sessionStorage会话存储,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
CSS3+DIV实现漂亮的动画彩色标签
Jun 16 HTML / CSS
css3 box-shadow阴影(外阴影与外发光)图示讲解
Aug 11 HTML / CSS
css3个性化字体_动力节点Java学院整理
Jul 12 HTML / CSS
css3 background属性调整增强介绍
Dec 18 HTML / CSS
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
Apr 16 HTML / CSS
CSS3 实现侧边栏展开收起动画
Dec 22 HTML / CSS
HTML5 和小程序实现拍照图片旋转、压缩和上传功能
Oct 08 HTML / CSS
canvas烟花特效锦集
Jan 17 HTML / CSS
HTML5的自定义属性data-*详细介绍和JS操作实例
Apr 10 HTML / CSS
浅谈HTML5新增和废弃的标签
Apr 28 HTML / CSS
基于HTML5+tracking.js实现刷脸支付功能
Apr 16 HTML / CSS
CSS实现五种常用的2D转换
Dec 06 HTML / CSS
HTML5表格_动力节点Java学院整理
Jul 11 #HTML / CSS
html5嵌入内容_动力节点Java学院整理
Jul 07 #HTML / CSS
html5定制表单_动力节点Java学院整理
Jul 11 #HTML / CSS
html5文本内容_动力节点Java学院整理
Jul 11 #HTML / CSS
HTML5中视频音频的使用详解
Jul 07 #HTML / CSS
html5组织文档结构_动力节点Java学院整理
Jul 11 #HTML / CSS
html5本地存储_动力节点Java学院整理
Jul 12 #HTML / CSS
You might like
基于mysql的论坛(2)
2006/10/09 PHP
php MsSql server时遇到的中文编码问题
2009/06/11 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
JavaScript对象和字串之间的转换实例探讨
2013/04/21 Javascript
jQuery动画animate方法使用介绍
2013/05/06 Javascript
jquery库或JS文件在eclipse下报错问题解决方法
2014/04/17 Javascript
Async Validator 异步验证使用说明
2017/07/03 Javascript
Angularjs渲染的 using 指令的星级评分系统示例
2017/11/09 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
vue 实现小程序或商品秒杀倒计时
2019/04/14 Javascript
微信小程序服务器日期格式化问题
2020/01/07 Javascript
详解JavaScript类型判断的四种方法
2020/10/21 Javascript
python进阶教程之循环相关函数range、enumerate、zip
2014/08/30 Python
Python实现类的创建与使用方法示例
2017/07/25 Python
Python中numpy模块常见用法demo实例小结
2019/03/16 Python
Pyqt5 实现跳转界面并关闭当前界面的方法
2019/06/19 Python
Python 中Django安装和使用教程详解
2019/07/03 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
2020/02/26 Python
python中什么是面向对象
2020/06/11 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
伦敦的高级牛仔布专家:Trilogy
2018/08/06 全球购物
化工机械应届生求职信
2013/11/04 职场文书
售后专员岗位职责
2013/12/08 职场文书
应届专科生个人的自我评价
2014/01/05 职场文书
学校门卫管理制度
2014/01/30 职场文书
团支部建设方案
2014/05/02 职场文书
培训研修方案
2014/06/06 职场文书
社保委托书怎么写
2014/08/02 职场文书
解除劳动合同协议书(样本)
2014/10/02 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书
七年级作文之我的梦想
2019/10/16 职场文书
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
Windows11里微软已经将驱动程序安装位置A盘删除
2021/11/21 数码科技
CI Games宣布《堕落之王2》使用虚幻引擎5制作 预计将于2023年正式发售
2022/04/11 其他游戏
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL