首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于 Indexed Database 来构建 Web 应用的本地存储(1)

基于 Indexed Database 来构建 Web 应用的本地存储(1)

Indexed Database 简介Indexed Database(也可简称为 IndexedDB)是一个不断发展中的网络标准。这个标准用于在浏览器中存储大量结构化的数据,并提供索引以保证高效率的查询。
Mozilla 已经提交了诸多关于 IndexedDB 这个规范的技术反馈,并打算在 Firefox 4 中实现它。当 Safari,Chrome 和 Opera 等浏览器支持一种叫做 Web SQL 数据库(Web SQL Database)的技术(这种技术使用 SQL 语句作为字符串参数传递给 JavaScript API)时,从开发美学(developer aesthetic)的角度考虑,Mozilla 认为 Web SQL Database 这种应用于客户端 Web 应用程序的技术是一种很不优美的解决方案。Mozilla 带来了 Web 开发人员对于 IndexedDB 规范的反馈,并同 Microsoft 交流过,Microsoft 也赞同对于 Web 来说 IndexedDB 是一个很好的选择。
在诸多浏览器中,比如 IE 8+,Safari 4+,Chrome 4+,Opera 10.5+ 和 Firefox 2+,Web 应用程序都已经尝到了 localStorage 和 sessionStorage 的甜头:通过简单的 JavaScript API 来存储键值对。Web 存储标准(包括 localStorage 和 sessionStorage)现在已经被广泛实现,它对于存储少量的数据非常有用,但对于大量的结构化数据存储则不太适用。很多服务器端数据库都使用 SQL 来存储结构化数据,并对其进行查询,更新等各种操作,而在客户端仍使用 SQL 来操作数据则存在很大的争议。
本文中将通过比较 IndexedDB 和 Web SQL Database,你会观察到前者比后者的语法结构更为简单,并且 IndexedDB 提供给第三方 JavaScript 库更多的自由。第三方 JavaScript 库可以使用 BTree API 来实现底层的设计。IndexedDB 在浏览器层面使用底层的接口,开发者可以自己实现这些基于底层技术的接口,就像人们使用 JavaScript 实现了各种各样的框架一样,如 jQuery,Dojo 及 YUI。
返回列表