阅读更多
本地存储方式有很多种,cookie、localstorage、sessionstorage、userData、Flash、Globalstorage等方式。
本地存储的优点是:
一、避免取回数据前页面一片空白,如果不需要最新的数据,也可以减少向服务器的请求次数,从而减少用户等待从服务端获取数据的时间;
二、网络状态不佳时,仍可以显示离线数据。
那么对比一下不同的本地存储方式之间的区别:
1、cookie ,客户端用来存储数据的一种选项,既可以在客户端设置也可以在服务端设置,cookie会跟随任意HTTP请求一起发送。各浏览器都支持,可以控制生命周期,但是有大小限制,也会增加流量,而且可能会被客户端禁用。
2、localstorage,大小得到扩充,大多数桌面浏览器会设置每个来源5MB的限制,谷歌和Safari对每个来源的限制是2.5MB。iOS的Safari和Android的webkit的限制也是2.5MB,不受窗口的影响,缺点是一经初始化后就长期存储在本地,不受会话长短的影响,若想删除,必须得手动清理。
3、sessionstorage,大小得到扩充,生命周期为一个会话周期,即从打开到关闭浏览器窗口,当然,必须是在线用户,必须是同一窗口,不同窗口之间的sessionstorage是不同的。
4、userData,可控生命周期,存储容量得到扩充,单个文件大小为128kb,一个域名下可存储1024kb的文件,但是只能在Windows+IE环境。
5、Flash,大小得到扩充,且各个浏览器都支持,但是需要在用的地方都引入.swf文件和大量的js,比较繁琐。
6、Globalstorage,在浏览器关闭以后,使用Globalstorage存储的信息仍能够保存下来,和sessionstorage一样,同一域中任何一个页面存储的信息都能被所有的页面共享,但是只支持FF,并且只支持当前域下的Globalstorage存储。