关于storage存储的那点事

在目前的大多互联网公司,有一道笔试题几乎的十之八九必考的,当前的浏览器端的存储技术有哪些?,这次就浏览器中的本地存储,我谈谈我的认识和理解.

  • localStorage:存储在本地,不会伴随数据的传输而传送,生命周期为永久;
  • sessionStorage:用户本地存储会话中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁
  • globalstorage:火狐中用于浏览器存储
  • userdata:IE中用于浏览器存储技术
  • Cookies:每个特定的域名下最多生成的cookie个数有限制,最多生成20个cookie(IE和Opera 会清理近期最少使用的cookie,Firefox会随机清理cookie),存在安全性问题,如果cookie被人拦截了,那人就可以取得所有的session信息

个人觉得,怎么回答已经很全了,其实我们业务中经常用到的还是H5中Web Storage的两种方式:
sessionStorage和localStorage

sessionStorage
// 可以将我们选择的每条数据进行存储
sessionStorage.setItems(k,v) 
// 得到session中的数据
sessionStorage.getItem(key)
// 移除session
sessionStorage.removeItem(k)
// 手动清除所有的session
sessionStorage.clear()

localStorage
* 保存数据:localStorage.setItem(key,value);
* 读取数据:localStorage.getItem(key);
* 删除单个数据:localStorage.removeItem(key);
* 删除所有数据:localStorage.clear();
* 得到某个索引的key:localStorage.key(index);

关于storeage的应用不仅仅局限于web,小程序中storage也饮用面很广,几乎所有的小程序在开发中都用到localStorage,用于保存用户登录和相关授权信息,关于使用方法,如下所示:
image