更新时间:2022-08-08 来源:黑马程序员 浏览量:
随着互联网的快速发展,基于网页的应用越来越普遍,同时也变得越来越复杂。为了满足各种各样的需求,会经常在本地设备上存储大量的数据。例如,记录历史活动信息。传统的方式是使用document.cookie来进行存储,但是由于其存储空间有限(大约4KB),并且需要复杂的操作来解析,给开发者带来了诸多不便。为此,HTML5规范提出了网络存储相关的解决方案,即Web Storage(Web存储)和本地数据库Web SQL Database。
Web Storage API中包含了两个关键的对象,分别是window.sessionStorage对象和window.localStorage对象。前者用于区域存储,后者用于本地存储。
Web Storage具有以下特点。
(1)数据的设置和读取比较方便。
(2)容量较大,sessionStorage大约5MB,localStorage大约为20MB。
(3)只能存储字符串,若想要存储JSON对象,则可以使用window.JSON.stringify()或者parse()进行序列化和反序列化编码。
Web Storage除了在移动平台上具有良好的兼容性外,它还具有以下优势。
(1)减少网络流量的使用。
使用Web Storage,一旦数据保存在本地后,就可以避免再次向服务器请求数据。因此减少了不必要的数据请求,同时也减少了数据在浏览器和服务器间不必要的来回传递。
(2)能够快速显示数据。
使用Web Storage性能好,因为从本地读数据比通过网络从服务器获得数据速度要快很多,可以即时获得本地数据。另外,网页本身也有缓存,因此如果整个页面和数据都在本地,则可以立即显示。
(3)可以临时存储数据。
在很多时候,数据只需要在用户浏览一组页面期间使用,而关闭窗口后数据就可以丢弃。这种情况使用sessionStorage非常方便。