本地数据存储的不同两种方式sessionStorage、localStorage,用法及其区别

1.sessionStorage

   通过此对象可以直接操作存储在浏览器中的会话级别的WebStorage。存储在sessionStorage中的数据首先是Key-Value形式的,另外就是它跟浏览器当前会话相关,当会话结束后,数据会自动清除,跟未设置过期时间的Cookie类似。就是说:浏览器被关闭或者是标签页关闭,sessionStorage就会被自动清除。但是如果只是刷新页面或是前进或后退,不会被清除。

无论是 localStorage 还是 sessionStorage 中保存的数据都仅限于该页面的协议。

  基本用法:

    (1)setItem(key,value):添加本地存储数据。 
    (2)getItem(key):通过key获取相应的Value。 
    (3)removeItem(key):通过key删除本地数据。 

    (4)clear():清空数据。

要注意的是,操作sessionStorage,存储的key value值是以字符串的形式。上面的方法接收的参数都应该是字符串形式。

特性:

   1.sessionStorage的存储空间更大,cookie是有4k,而sessionStorage一般有4M,不同浏览器有区别。

    2.不会再每次请求时都发往服务器。这个也是区别于cookie,cookie在客户端向服务器发送请求时会自动把自己也发出去。

   3.每个窗口的sessionStorage都是独立的。只会随窗口的关闭而清除。不同窗口之间的sessionStorage不共享

   4.再次使用setItem设置已经存在的key的value时,新的值将替代旧的值。

二、localStorage

localStorage存储的数据是永久保存的。且不会自动发送到服务器,存储空间4M以上。

  用法:跟sessionStorage一样。

特性:除了上面提到的三个以外,还有

  1.对于某一个域下来说,local storage是共享的(多个窗口共享一个“localStorage”,前提是不跨域)

  2.localStorage用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。

你可能感兴趣的:(数据存储)