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特效之动画:animation的应用
May 09 HTML / CSS
CSS3弹性盒模型开发笔记(二)
Apr 26 HTML / CSS
CSS3实现彩色进度条动画的示例
Oct 29 HTML / CSS
Html5 postMessage实现跨域消息传递
Mar 11 HTML / CSS
让IE支持HTML5的方法
Dec 11 HTML / CSS
HTML5 Canvas中使用用路径描画圆弧
Jan 01 HTML / CSS
H5 meta小结(前端必看篇)
Aug 24 HTML / CSS
详解html5 canvas常用api总结(二)--绘图API
Dec 14 HTML / CSS
html5 canvas简单封装一个echarts实现不了的饼图
Jun 12 HTML / CSS
详解Canvas实用库Fabric.js使用手册
Jan 07 HTML / CSS
CSS三大特性继承性、层叠性和优先级详解
Jan 18 HTML / CSS
纯CSS实现一个简单步骤条的示例代码
Jul 15 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
PL-880隐藏功能
2021/03/01 无线电
php数组函数序列之array_sum() - 计算数组元素值之和
2011/10/29 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
php基于环形链表解决约瑟夫环问题示例
2017/11/07 PHP
firefox浏览器下javascript 拖动层效果与原理分析代码
2007/12/04 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
2015/03/06 Javascript
Nodejs学习笔记之入门篇
2015/04/16 NodeJs
Javascript中的方法和匿名方法实例详解
2015/06/13 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
2015/08/18 Javascript
js实现div模拟模态对话框展现URL内容
2016/05/27 Javascript
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
JS实现的判断方法、变量是否存在功能示例
2020/03/28 Javascript
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
Sublime Text3 配置 NodeJs 环境的方法
2020/05/20 NodeJs
基于JavaScript实现简单扫雷游戏
2021/01/02 Javascript
Python2.7基于淘宝接口获取IP地址所在地理位置的方法【测试可用】
2017/06/07 Python
Python简单实现自动删除目录下空文件夹的方法
2017/08/29 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
基于pytorch 预训练的词向量用法详解
2020/01/06 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
Python如何解除一个装饰器
2020/08/07 Python
python使用建议技巧分享(三)
2020/08/18 Python
计算机通信专业推荐信
2014/02/22 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
学校党员个人问题整改措施思想汇报
2014/10/08 职场文书
2014年科室工作总结
2014/11/20 职场文书
MySQL七大JOIN的具体使用
2022/02/28 MySQL
Win11安装升级时提示“该电脑必须支持安全启动”
2022/04/19 数码科技