js存储 cookie,localStorage,sessionStorage的比较
1.cookie
cookie原本是用来客户端与服务器端通信的,因其有存储的功能,所以被用来存储。
cookie存储的缺点:
- 大小有限制,最大只能存储4kb.
- 因为http请求时,会携带cookie,所以当cookie太大时,会影响效率。
- js对cookie的原生api很简单,通过document.cookie=...来获取和修改cookie,且获取的值是一个字符串,需要通过封装才能用。
2.localStorage和sessionStorage
- localStorage和sessionStorage是h5专为客户端存储的新方法。
- localStorage对存储的内容没有时间限制。
- localStorage最大可存储5MB。
- localStorage使用起来简单,可以直接把它当成对象来添加属性,也可以通过localStorage.getItem()和localStorage.setItem()获取和存储数据。
- sessionStorage和localStorage的用法一样。但是,sessionStorage在用户关闭浏览器窗口后,数据会被删除。