localStorage、sessionStorage用法总结
1.作用
1.1 共同点:
1.2 不同点:
2.浏览器支持

if(window.localStorage){alert('This browser supports localStorage');}else{alert('This browser does NOT support localStorage');}
3.API使用
3.1 原生API
3.2 针对对象的存和取的方法:
3.3 拓展:IE6/7解决方案
if(!window.localStorage && /MSIE/.test(navigator.userAgent)){
if(!window.UserData) {
window.UserData = function(file_name) {
if(!file_name) file_name="user_data_default";
var dom = document.createElement('input');
dom.type = "hidden";
dom.addBehavior ("#default#userData");
document.body.appendChild(dom);
dom.save(file_name);
this.file_name = file_name;
this.dom = dom;
return this;
};
window.UserData.prototype = {
setItem:function(k, v) {
this.dom.setAttribute(k,v);
this.dom.save(this.file_name);
},
getItem:function(k){
this.dom.load(this.file_name);
return this.dom.getAttribute(k);
},
removeItem:function(k){
this.dom.removeAttribute(k);
this.dom.save(this.file_name);
},
clear:function() {
this.dom.load(this.file_name);
var now = new Date();
now = new Date(now.getTime()-1);
this.dom.expires = now.toUTCString();
this.dom.save(this.file_name);
}
};
}
window.localStorage = new window.UserData("local_storage");
}
PS:不支持原生 localStorage所有方法,只支持4种扩展出来的自定义方法.
if(!window.localStorage && /MSIE/.test(navigator.userAgent)){if(!window.UserData) {window.UserData = function(file_name) {if(!file_name) file_name="user_data_default";var dom = document.createElement('input');dom.type = "hidden";dom.addBehavior ("#default#userData");document.body.appendChild(dom);dom.save(file_name);this.file_name = file_name;this.dom = dom;return this;};window.UserData.prototype = {setItem:function(k, v) {this.dom.setAttribute(k,v);this.dom.save(this.file_name);},getItem:function(k){this.dom.load(this.file_name);return this.dom.getAttribute(k);},removeItem:function(k){this.dom.removeAttribute(k);this.dom.save(this.file_name);},clear:function() {this.dom.load(this.file_name);var now = new Date();now = new Date(now.getTime()-1);this.dom.expires = now.toUTCString();this.dom.save(this.file_name);}};}window.localStorage = new window.UserData("local_storage");}PS:不支持原生 localStorage所有方法,只支持4种扩展出来的自定义方法.
localStorage、sessionStorage用法总结的更多相关文章
- localStorage sessionStorage 用法
sessionStorage.getItem('key') // 获取 sessionStorage.setItem('key','value') //设置 sessionStorage.remove ...
- sessionStorage和localStorage的用法,不同点和相同点
一,共同点 (1)存储时用setItem: localStorage.setItem("key","value");//以"key"为名称存 ...
- JS --- 本地保存localStorage、sessionStorage用法总结
JS的本地保存localStorage.sessionStorage用法总结 localStorage.sessionStorage是Html5的特性,IE7以下浏览器不支持 为什么要掌握localS ...
- 如何使用T-SQL备份还原数据库及c#如何调用执行? C#中索引器的作用和实现。 jquery控制元素的隐藏和显示的几种方法。 localStorage、sessionStorage用法总结 在AspNetCore中扩展Log系列 - 介绍开源类库的使用(一) span<T>之高性能字符串操作实测
如何使用T-SQL备份还原数据库及c#如何调用执行? 准备材料:Microsoft SQL Server一部.需要还原的bak文件一只 一.备份 数据库备份语句:user master backup ...
- localStorage sessionStorage cookie indexedDB
目录: localStorage sessionStorage cookie indexedDB localStorage localStorage存储的数据能在跨浏览器会话保留 数据可以长期保留,关 ...
- 前端 JS,localStorage/sessionStorage、cookie 及 url 等实现前台数据共享、传输
需求是这样的:需要统计用户公司某款产品用户的回馈情况,美工给的设计多个psd,每个页面里面都有一个选择题,让用户选择自己的答案,最后经过几次选择之后在最后一个页面统一提交到后台!所以这里引出的技术需求 ...
- Cookie localStorage sessionStorage
三者的异同 特性 Cookie localStorage sessionStorage 数据的生命期 可设置失效时间,默认是关闭浏览器后失效 除非被清除,否则永久保存 仅在当前会话下(tab标签页)有 ...
- HTML5 的web储存: localStorage & sessionStorage
早期的浏览器使用cookie储存,HTML5新增web储存,包括:localStorage 和 sessiongStorage; localStorage:可以永久储存: sessionStorage ...
- iOS开发和localStorage/sessionStorage
一.前言 在近期的工作中,有前端同学告诉我要清除localStorage,我当时对localStorage完全没有概念,所以就在w3c看了一下相关的内容,下面简单的介绍一下.算是对iOS开发者普及H5 ...
- cookie, localStorage, sessionStorage区别
cookie 有过期时间,默认是关闭浏览器后失效,4K,兼容ie6,不可跨域,子域名会继承父域名的cookielocalStorage 永不过期,除非手动删除,5M,兼容IE8,不可跨域,子域名不能继 ...
随机推荐
- 样条曲线catmull rom转bezier
b0,..,b3是贝塞尔,c-1, c2是catmull rom控制点 [b0] = 1 [ 0 6 0 0] [c_1] [b1] - [-1 6 1 0] [c0] [b2] 6 [ 0 1 6 ...
- mybatis 存储过程调用
接口 UserInfoMapper.java xml UserInfoMapper.xml 如何关联 <?xml version="1.0" encoding=" ...
- Git & TortoiseGit
http://www.git-scm.com/download/ http://download.tortoisegit.org/ https://help.github.com/articles/g ...
- git 只merge一个commit的方法
https://git-scm.com/book/tr/v2/Git-Basics-Viewing-the-Commit-History gil log 来查看commit的记录 Other main ...
- Mac上修改MySQL默认字符集为utf8
1.检查默认安装的mysql的字符集 mysql> show variables like '%char%'; +--------------------------+------------- ...
- Crystal Report保留小数位
If IsNull({DECL_INV_ITEM_I.DECLEAR_NO}) Or Trim({DECL_INV_ITEM_I.DECLEAR_NO}) = "" Then &q ...
- Windows解决多版本python执行pip3时出错AttributeError: module 'enum' has no attribute 'IntFlag'?
摘要: 本机装有python2.7和python3.6,执行pip和pip2时没有问题,执行pip3时提示: C:\Users\>pip3 Traceback (most recent call ...
- C# winfrom 存取图片到数据库(二进制,image)
1.读取本地图片到PictureBox public void InageShow(PictureBox PB) { OpenFileDialog openfile = new OpenFileDia ...
- C语言编程学习:写的秒速计算四则混合运算项目
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...
- [ZJOI2008] 树的统计Count
题目链接:戳我 树链剖分. 注意一点就是维护最大值的时候最好写成下面代码里那个样子,要不然会因为可能左右区间没有的问题有奇奇怪怪的锅. 代码如下: #include<iostream> # ...