cookie:
存储容量最大不能超过4kb;
安全性较低,每次请求cookie都会被携带到服务器端,且以明文方式存储,一旦被拦截,信息则会被获取。
webStorage分为sessionStorage和localStorage,最大为5M,且在请求时不会携带到服务器端。
localStorage:
本地存储:除非手动清除,否则关闭当前会话甚至于在关闭浏览器时候数据依旧会保存。
通过setItem来向sessionStorage中传值,参数为键值对;
localStorage.setItem('key','value');
通过getItem来获取存储中的值,参数为属性名;
localStorage.getItem('key');
通过removeItem来删除单个数据,参数为属性名;
localStorage.removeItem('key');
通过clear来完全清除存储;
localStorage.clear();
由于webStorage在存储数据的时候会调用方法toString()把数据转化成字符串的格式来进行存储,所以在存储对象和数组时我们需要先调用JSON.stringify()来把数组或者对象转化成JSON格式来进行存储,并在读取时使用JSON.parse()方法来进行转换。
localStorage.setItem('Obj',JSON.stringify(value))
JSON.parse(localStorage.getItem('Obj'))
sessionStorage
会话存储:存储级别为会话级,存储的内容只在当前会话有效,浏览器关闭,数据会被清除。
拥有和localStorage相同的方法来添加获取和清除值。