WebStorage是什么?

WebStorage

使用HTML5可以在本地存储用户的浏览数据。早些时候,本地存储使用的是 cookie。但是Web 存储需要更加的安全与快速,这些数据不会被保存在服务器上,但是这些数据只用于用户请求网站数据上。它也可以存储大量的数据,而不影响网站的性能。数据以 键/值 对存在, web网页的数据只允许该网页访问使用。

Web Storage的目的是为了克服由cookie带来的一些限制,当数据需要被严格控制在客户端上时,无须持续地将数据发回服务器。Web Storage的两个主要目标是:

  • 提供一种在cookie之外存储会话数据的途径。
  • 提供一种存储大量可以跨会话存在的数据的机制。

Web Storage又分为两种: sessionStorage 和localStorage ,即这两个是Storage的一个实例。从字面意思就可以很清楚的看出来,sessionStorage将数据保存在session中,浏览器关闭也就没了;而localStorage则一直将数据保存在客户端本地。其API提供的方法有以下几种:

    - setItem (key, value) ——  保存数据,以键值对的方式储存信息。

    - getItem (key) ——  获取数据,将键值传入,即可获取到对应的value值。

    - removeItem (key) ——  删除单个数据,根据键值移除对应的信息。

    - clear () ——  删除所有的数据

    - key (index) —— 获取某个索引的key

localStorage

localStorage的生命周期是永久性的。假若使用localStorage存储数据,即使关闭浏览器,也不会让数据消失,除非主动的去删除数据,使用的方法如上所示。localStorage有length属性,可以查看其有多少条记录的数据。使用方法如下:

     var storage = null;
         if(window.localStorage){              //判断浏览器是否支持localStorage
            storage = window.localStorage;     
            storage.setItem("name", "Rick");    //调用setItem方法,存储数据
            alert(storage.getItem("name"));     //调用getItem方法,弹框显示 name 为 Rick
            storage.removeItem("name");     //调用removeItem方法,移除数据
            alert(storage.getItem("name"));   //调用getItem方法,弹框显示 name 为 null
 
         }

localStorage 相对sessionStorage简单一点,需要注意的地方不是很多。

sessionStorage

sessionStorage 的生命周期是在浏览器关闭前。也就是说,在整个浏览器未关闭前,其数据一直都是存在的。sessionStorage也有length属性,其基本的判断和使用方法和localStorage的使用是一致的。需要注意的有以下几点:

  • 页面刷新不会消除数据;
  • 只有在当前页面打开的链接,才可以访sessionStorage的数据;
  • 使用window.open打开页面和改变localtion.href方式都可以获取到sessionStorage内部的数据;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏淡定的博客

html5之客户端存储

所谓的WebStorage指的是客户端存储,在这里指的是浏览器端存储,比如在网站上自动登陆这些功能,其实就是把一些少量的数据存储在浏览器等客户端中,这样可以减少...

24110
来自专栏九彩拼盘的叨叨叨

Web存储(Web Storage)介绍

在没有Web Storage之前,是通过cookie来在客户端存储数据的。但是由于

16140
来自专栏娱乐心理测试

vue中 localStorage的使用方法(详解)

vue中实现本地储存的方法:localStorage,在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了c...

53720
来自专栏互联网软件技术

本地存储之localStorage

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

16930
来自专栏Golang语言社区

【Go 语言社区】 HTML5 前端--数据保存实例

保存数据--->到本地s.html: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//E...

37640
来自专栏vue学习

32、localStorage本地储存

其实这种实现方式很不好,这章的主要意义还是在于localStorage这个知识点的运用,下章我们学着使用vuex来进行这个地址状态的管理。

12660
来自专栏互联网软件技术

本地存储之sessionStorage

  复制链接地址打开网页不会复制seessionStorage内的数据

19740
来自专栏杨龙飞前端

localstorage在safri下的坑

22350
来自专栏Hongten

给大家分享一个省市区选择框_js实现

=================================================

32910
来自专栏腾讯IVWEB团队的专栏

React-Native 安卓预加载优化方案

React-Native安卓预加载优化方案本文针对使用React Native开发混合应用的过程中安卓端白屏时间较长的问题,提出了react-native安卓端...

1.2K00

扫码关注云+社区

领取腾讯云代金券