# localStorage永久存储
## 添加数据
```
localStorage.setItem('ym','{a:"b"}')
```
## 获取数据
```
localStorage.getItem('ym')
```
# sessionStorage 临时会话存储
浏览器关闭即消失,一般用来存储用户的信息。关掉浏览器后,需要重新登录。用法同上。
# cookie、localStorage、sessionStorage 区别和共同点
<table>
<tr>
<td>特性</td>
<td>cookie</td>
<td>sessionStorage</td>
<td>localStorage</td>
</tr>
<tr>
<td>生命周期</td>
<td>生成时就会被指定一个maxAge值,这就是cookie的生存周期,在这个周期内cookie有效,默认关闭浏览器失效</td>
<td>页面会话期间可用</td>
<td>除非数据清除,否则 一直存在</td>
</tr>
<tr>
<td>数据大小</td>
<td>4kb左右(因为每次http请求都会携带cookie)</td>
<td colspan="2">一般5M或者更大</td>
</tr>
<tr>
<td>与服务器通信</td>
<td>对服务器的请求来传递,每次都会携带在HTTP请求头中,如果使用cookie保存过多数据会带来性能问题</td>
<td colspan="2">数据不是由每个服务器请求传递的,而是只有在请求时使用数据,不参与和服务器的通信</td>
</tr>
<tr>
<td>易用性</td>
<td>cookie需要自己封闭setCookie,getCookie</td>
<td colspan="2">可以用原生接口,也可以再次封闭来对Object和Array有更好的支持</td>
</tr>
<tr>
<td>共同点</td>
<td colspan="3">都保存在浏览器端,和服务器端的session机制不同</td>
</tr>
</table>