基本概念:
IndexedDB可以使用户在其浏览器中保存大型数据, 并在在线和下线情况下都可以随时随地查询。
基本定义:
Database(数据库)
database(数据库)
Name:名称,String值.
Current version:当前版本号(默认最小值是1, interger值) .
object store(对象存储)
保存的对象以key-value形式存在, 并以key的升序形式保存,因此,对象的key必须是唯一值。
version(版本)
数据库创建后,默认版本号为1.
database connection(数据连接)
一个数据库可以同时有多个连接
transaction(事物)
一个数据库连接可以同时有几个活跃的事物。 事物的数量范围在数据库创建的时候定义。 事物有3种方式:读写,只读,提升版本号。
request(请求)
每一个请求代表读或写操作。
index(索引)
当数据发生变化时,其所有的索引自动更新。
Key-Value 键-值
key(键)
对象是通过键来获取它的值。 一般对象通过3种途径获得键:键生成器,键路径和具体的值。对象的每个键都是唯一的。 键可以是以下类型:string, date, float, and array.
key generator(键生成器)
一种产生新键,并可用于排序的方法。
in-line key(内嵌键)
通过键路径来查找。
out-of-line key
A key that is stored separately from the value being stored.
备注: in-line key, out-of-line key我不能理解, 正在查阅资料。
key path(键路径)
有效的路径:an empty string, a JavaScript identifier, or multiple JavaScript identifiers separated by periods. It cannot include spaces.
value(值)
JavaScript的任何类型: boolean, number, string, date, object, array, regexp, undefined, and null.
Range and scope(范围)
scope(范围)
只读的事物可以同时多个进行, 但是写的事物必须单独进行。
cursor(光标)
一段键的范围内可以使用光标来解析范围内的每条数据。
key range(键的范围)
通过一段键的范围,可以获取其中范围内的值。
局限
1. 对于某些地区的文字,不能进行正确的排序。
2. 不支持实时交互
3. 不支持全文搜索, 无法支持LIKE操作。
4. 用户可随时删除浏览器保存的数据库。
5. 磁盘存储空间不够,数据会丢失。
分享到:
相关推荐
在学习和使用IndexedDB时,应熟悉其API接口、了解其异步操作的本质,并掌握如何设计高效的数据模型和索引策略。通过实践和调试,开发者可以熟练掌握这个强大的浏览器端数据库技术,提升Web应用的用户体验和性能。
WebSQL和IndexedDB都是浏览器本地存储技术,但随着WebSQL被弃用,开发者逐渐转向使用IndexedDB...通过这个待办事项列表的案例,你可以深入学习到如何在实际项目中进行数据库迁移,同时掌握IndexedDB的核心概念和用法。
首先,我们需要理解IndexedDB的基本概念。IndexedDB是一个键值对存储系统,其中每个键都对应一个值。值可以是任意JavaScript类型,包括对象。数据库由多个对象存储(Object Stores)组成,每个对象存储都有自己的...
总的来说,“IndexedDB基本使用共22页.pdf.zip”的内容涵盖了如何利用IndexedDB进行数据存储、检索和管理,是学习和理解这一技术的重要资源。通过深入学习和实践,开发者可以有效地利用IndexedDB提升Web应用的性能和...
IndexedDB 是一种在浏览器中存储大量数据的离线存储技术,它为Web应用程序提供了数据库的功能。这个技术尤其适用于那些需要在本地存储大量结构化数据的应用,如离线阅读应用、Web邮件客户端或者需要进行复杂数据检索...
**HTML5 IndexedDB 学习指南** IndexedDB 是 HTML5 中一种高级的本地存储机制,它为应用程序提供了在客户端浏览器中存储大量结构化数据的能力,支持高效搜索和索引。这个技术尤其适合需要离线存储或者需要处理大量...
通过查看源代码和运行示例,开发者可以更好地了解 IndexedDB 的实际应用,并学习如何在自己的项目中使用这一功能。 总之,HTML5 的 IndexedDB 接口为现代 web 应用提供了强大的离线存储能力,使得开发者能够构建...
在介绍ZangoDB之前,我们先理解两个基础概念:MongoDB和IndexedDB。MongoDB是一款流行的开源NoSQL数据库,以其灵活的数据模型(JSON-like文档)、高性能和易于扩展性而受到欢迎。而IndexedDB则是HTML5的一项标准,它...
IndexedDB作为浏览器提供的一个高级本地存储解决方案,提供了丰富的数据存储能力,但它复杂的API使得直接使用起来有一定的学习曲线。为了解决这个问题,开发者们创造了一系列的库来简化IndexedDB的使用,其中就包括...
1. **工作站/文件服务器模式(Server-Based)**:一台或多台专用服务器负责存储和管理文件,其他工作站通过网络访问这些资源。 2. **客户端/服务器模式(Client/Server, C/S)**:每个工作站既可以作为客户端访问服务器...
它提供了对IndexedDB API的全面模拟,包括Object Stores、Indexes、Transactions以及KeyPaths等核心概念。 **使用IndexedDBShim** 要在项目中使用IndexedDBShim,首先需要从GitHub仓库下载并引入到项目中,如本例...
相比于Web Storage,IndexedDB提供了更高级别的数据管理能力。 3. **Cache API**: 用于缓存资源,提高页面加载速度。它可以配合Service Worker使用,实现离线优先的策略,让Web应用在离线状态下也能正常运行。 4. ...
在JavaScript的世界里,数据库并不是一个原生的概念,但随着Web应用程序的发展,JavaScript开始与数据库进行交互,以存储和检索数据。这里的"javascript数据库大图片"可能是指一系列利用JavaScript操作数据库的示例...
但是,对于新手来说,jQuery仍然是一个很好的学习起点,其易用性无可替代。 总之,jQuery以其高效的DOM操作、丰富的API和强大的插件系统,成为了JavaScript开发中的重要工具。无论你是初学者还是经验丰富的开发者,...
它提供了一套简单易用的 API,使得开发者可以像操作传统数据库一样操作 IndexedDB,大大降低了学习和使用的门槛。 3. **Dexie 的核心概念** - **Database(数据库)**:Dexie 中的数据库是通过 `new Dexie...
- **IndexedDB**:一个非关系型的数据库系统,支持大量复杂数据的本地存储。 6. **Web Workers和Web Socket** - **Web Workers**:在后台运行,处理繁重计算任务,不阻塞用户界面。 - **Web Sockets**:建立持久...
2. **IndexedDB**: 是一个NoSQL数据库,支持复杂的数据结构和索引,适用于大量数据的存储,常用于离线应用或需要快速检索的场景。 3. **Cache API**: 是Service Worker的一部分,用于缓存静态资源,改善性能和离线...
- 存储与通知:了解IndexedDB等离线存储技术,以及Push Notification的实现方式。 - 性能优化:利用Lighthouse等工具评估并优化PWA的性能表现。 通过以上学习路径,你将能够全面地掌握现代前端开发所需的各种技能...