`
newspringwork
  • 浏览: 101387 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

HTML5之Web存储

 
阅读更多

Web Storage(Web存储)提供了一种方式,让Web页面实现在客户端浏览器中以键值对的方式在本地保存数据。

 

一、Cookie存储

HTML4中在客户端存储简单用户信息的一种方式,它使用文本来存储信息。

1. 优点:

  • 简单易用
  • 浏览器自动管理不同站点的Cookie并负责发送数据

2. 缺点:

  • 文本存储,安全性差,容易被窃取
  • 存储的容量有限(4KB),数量也有限
  • 浏览器安全级别最高时,可能会失效
  • 会在服务器客户端间来回存储,影响速度、效率

二、localStorage和sessionStorage

在HTML5各项特性中,Web Storage的浏览器支持度比较好,目前所有主流浏览器都在一定程度上支持Web Storage。

1. localStorage

持久化的本地存储,除非主动删除数据,否则永远不会过期。

2.sessionStorage

针对session的数据存储,用户关闭浏览器后,数据会被删除。

3.优点

  • 存储空间更大,各个浏览器实现略有不同,但都比cookie要大很多
  • 与cookie不同,不会在与服务器交互时来回传输
  • 提供了简单易用的接口
  • 独立的存储空间

4.缺点

  • 浏览器为每个域分配独立的存储空间,但是如果A域的页面嵌入B域的脚本,那么B域的脚本也可以访问A域的数据
  • 存储的数据未加密且永远不会过期,容易造成隐私泄露

 5.使用Web Storage(下面均在Chrome 43.0.2357.81m下测试)

  • 获取对象:window.sessionStorage,window.localStorage
  • 方法:setItem(k,v),removeItem(k),getItem(k),clear()和key(index)
  • 属性:length,存储数据还可以简单的使用localStorage.key=value的方式
  • 事件:onStorage(支持属性->key,oldValue,newValue,url,storageArea),不同浏览器注册方法不一样
  • 多窗口的sessionStorage的数据不能共享,例如同时打开浏览器的2个tab,访问window.sessionStorage.visitCount得到的值是不同的,如果要在一个域名下共享某个变量值,考虑用localStorage或cookie
  • onStorage事件:chrome下,只响应localStorage事件,对于sessionStorage中值的改变没响应,而且本窗口(当前tab)也不会产生storage事件通知到监听器,只会通知到其他窗口(针对这种情况下,有网友提出其他解决方式=>http://www.cnblogs.com/cczw/p/3196195.html)。
二、Web SQL数据库
Web SQL数据库API实际上不是HTML5规范的组成部分,而是单独的规范,IE、Firefox中并没有实现它。而WHATWG也停止了对Web SQL Database的开发,并使用新的规范-索引数据库(Indexed Database)所取代。
由于不是专业前端开发人员,此功能也未用到,不再详述。
分享到:
评论

相关推荐

    web存储 html5

    web存储 html5

    HTML5本地存储——Web SQL Database

    然而,理解Web SQL的概念对于理解现代Web存储机制仍然很有帮助,尤其是当面临需要支持旧版浏览器的项目时。 在提供的压缩包文件`test`中,可能包含了实现上述操作的示例代码,读者可以查阅以加深理解。通过学习和...

    HTML 5离线存储之Web SQL

    ### HTML5离线存储之Web SQL 随着HTML5标准的不断完善和浏览器技术的进步,Web开发领域迎来了诸多新特性,其中Web SQL数据库就是一种用于客户端的数据存储解决方案。虽然WebDatabase规范官方宣布不再进行维护,但其...

    HTML5移动Web开发

    HTML5移动Web开发是当前互联网应用开发的重要领域,随着移动设备的普及,越来越多的开发者将目光转向了构建适应各种屏幕尺寸、操作系统且具有良好用户体验的移动Web应用。本资源提供了“HTML5移动Web开发”指南,...

    Web存储 HTML5 实例

    HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储 sessionStorage - 针对一个 session 的数据存储 之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为...

    WEB开发 之 HTML 5 Web 存储.docx

    总结起来,HTML5的Web存储(localStorage和sessionStorage)为开发者提供了强大而灵活的工具,用于在客户端存储和检索数据,极大地提高了Web应用程序的功能性和用户体验。它们解决了cookies的不足,使Web应用能够...

    HTML5 For Web Designers

    《HTML5 For Web Designers》是一本专门为Web设计师编写的指南,它深入浅出地介绍了HTML5这一现代网页设计的核心语言。HTML5是超文本标记语言(HTML)的最新版本,自2008年发布以来,已经逐渐成为构建响应式、交互性...

    html5Web存储和缓存技术简单案例

    HTML5是现代网页开发的重要标准,它引入了许多新特性,其中Web存储和缓存技术是提升Web应用性能和用户体验的关键部分。在这个简单的案例中,我们将深入理解这些技术,并探讨它们如何帮助开发者创建更加高效和响应式...

    html5简易Web留言本

    HTML5的Web留言本是一个利用现代浏览器特性,特别是Web Storage技术来实现在线存储用户数据的应用。这个项目的核心目标是创建一个简单的留言板,用户可以在上面留下信息,且这些信息能够在用户下次访问时仍然存在,...

    HTML5_离线存储技术

    HTML5 离线存储技术是现代Web开发中的一个重要特性,它使得网页和应用程序即使在网络不稳定或者无网络连接的情况下也能正常运行。这项技术的核心在于利用HTML5的`Application Cache`(应用缓存)或者称为`Cache ...

    HTML5 FOR WEB DESIGNERS

    对于Web应用程序,HTML5提供了离线存储(Offline Storage)和Web Workers特性。离线存储允许数据在用户离线时仍然可用,提高了应用的可用性和响应速度。Web Workers则可以在后台运行脚本,不阻塞用户的界面交互,...

    HTML5 Web 存储详解

    HTML5 Web 存储是现代Web开发...总的来说,HTML5 Web存储为Web开发者提供了一种高效、便捷的本地数据管理手段,使得应用程序能够更好地处理离线数据,提升用户体验,同时也为构建更复杂、功能丰富的Web应用奠定了基础。

    HTML5移动Web开发实战

    HTML5的离线存储(离线Web应用程序)允许网页在用户离线时也能访问部分内容,通过Application Cache功能实现。此外,Web Storage(包括localStorage和sessionStorage)提供了比传统cookies更高效的数据存储解决方案...

    HTML5程序设计-3期(KC014) KC014050000007 单元设计_单元7 HTML5 Web存储.doc

    总的来说,HTML5 Web存储是现代网页开发的关键技术之一,掌握其原理和使用方法对于成为一名合格的前端开发者至关重要。通过这个单元的学习,学生将能够熟练运用Web Storage进行数据存储和管理,提高网页应用的性能和...

    HTML5移动Web开发指南

    在HTML5中,开发者可以享受到许多新特性,比如离线存储、音频和视频内嵌、 canvas(画布)用于动态图形、svg(可缩放矢量图形)用于高质量图像、geolocation(地理位置)API以获取用户位置信息、web workers和web ...

    web日历,可添加提醒。基于html5的本地存储,编码使用原生js,没用任何框架.zip

    1. **HTML5本地存储**:HTML5的Web Storage(包括localStorage和sessionStorage)允许开发者在用户的浏览器上存储大量数据,即使关闭浏览器后数据也能保留,这对于创建离线应用或实现用户设置的持久化非常有用。...

    基于html5的web前端设计(旅游景点介绍)

    【标题】:“基于HTML5的Web前端设计(旅游景点介绍)” HTML5是现代Web开发的核心,它在传统的HTML4基础上引入了许多新特性,增强了网页的交互性和动态性。在这个项目中,我们主要关注如何利用HTML5进行网页设计,...

    html5本地存储web sql数据库操作增删查找实例

    HTML5的本地存储是Web应用程序离线运行的关键技术之一,其中Web SQL数据库是早期实现本地存储的方式之一。本文将深入探讨HTML5中的Web SQL数据库,包括它的创建、表格操作以及数据的增删查改。 首先,Web SQL数据库...

Global site tag (gtag.js) - Google Analytics