JS 中除cookie存储外,还有哪些存储方式?

IE提供了一种存储可以持久化用户数据,叫做userData,从IE5.0就开始支持。每个数据最多128K,每个域名下最多1M。这个持久化数据存放在缓存中,如果缓存没有清理,那么会一直存在。

 

<div style="behavior:url(#default#userData)" id="box"></div>

 

addEvent(window, 'load', function () {

var box = document.getElementById('box');

box.setAttribute('name', encodeURIComponent('李炎恢'));

box.save('bookinfo');

 

//box.removeAttribute('name');//删除userDate

//box.save('bookinfo');

 

box.load('bookinfo');

alert(decodeURIComponent(box.getAttribute('name')));

});

 

PS:这个数据文件也是保存在cookie目录中,只要清除cookie即可。如果指定过期日期,则到期后自动删除,如果没有指定就是永久保存。

 

Web存储

在比较高版本的浏览器,JavaScript提供了sessionStorageglobalStorage。在HTML5中提供了localStorage来取代globalStorage。而浏览器最低版本为:IE8+Firefox3.5+Chrome 4+Opera10.5+

 

PS:由于这三个对浏览器版本要求较高,我们就只简单的在Firefox了解一下,有兴趣的可以通过关键字搜索查询。

 

//通过方法存储和获取

sessionStorage.setItem('name', '李炎恢');

alert(sessionStorage.getItem('name'));

 

//通过属性存储和获取

sessionStorage.book = '李炎恢';

alert(sessionStorage.book);

 

//删除存储

sessionStorage.removeItem('name');

 

PS:由于localStorage代替了globalStorage,所以在FirefoxOperaChrome目前的最新版本已不支持。

 

//通过方法存储和获取

localStorage.setItem('name', '李炎恢');

alert(localStorage.getItem('name'));

//通过属性存储和获取

localStorage.book = '李炎恢';

alert(localStorage.book);

//删除存储

localStorage.removeItem('name');

 

PS:这三个对象都是永久保存的,保存在缓存里,只有手工删除或者清理浏览器缓存方可失效。在容量上也有一些限制,主要看浏览器的差异,Firefox3+IE8+Opera5M,,ChromeSafari2.5M

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值