cookie | localStorage | sessionStorage | |
---|---|---|---|
概念 | 存放在客户端的一段文本信息 | 存储在客户端的临时信息,只能存放字符串类型数据 | 同localStorage |
大小 | 4k | 5M | 5M |
生命周期 | 浏览器关闭,数据清空 | 存在内存中,除非自己删除 | 浏览器关闭,数据清空 |
存储信息 | 文本类型 | 字符串类型数据 | 同左 |
属性 | 是document属性 | 是window属性 | 同左 |
作用范围 | 无法跨域 | 同一浏览器不同页面可以共享数据 | 用来保存临时数据,防止用户刷新页面之后丢失参数 |
原生api | 不好用,自己封装 | 还好 | 还好 |
应用 | 判断用户知否登录 | 购物车信息 |
cookie的api不是很好用,要封装创建cookie,获取cookie,删除cookie
【前世今生】
cookie用来保存客户浏览器请求服务器页面的请求信息
HTML5的WebStorage提供了两种API:localStorage(本地存储)和sessionStorage(会话存储)
WebStorage的目的是克服由cookie所带来的一些限制,当数据需要被严格控制在客户端时,不需要持续的将数据发回服务器
【共同点】:都是存在客户端的
HTTP请求
cookie:每次都会携带在http头中,过多使用cookie会带来性能问题
localStorage、sessionStorage:仅在客户端(即浏览器)中保存,不参与和服务器的通信