华为OD面试真题精选
专栏:华为OD面试真题精选
目录: 2024华为OD面试手撕代码真题目录以及八股文真题目录

1. Cookie、Storage、InnoDB的区别
1. Cookie
- 用途:用于在客户端存储少量数据,可以在不同页面之间共享,并且数据会在 HTTP 请求中自动发送到服务器。常用于会话管理、用户跟踪等。
- 容量:通常每个 Cookie 大小限制为约 4KB。
- 存储位置:客户端浏览器。
- 生命周期:可以设置过期时间,默认为会话结束后失效。
- 安全性:由于会在每次请求中发送到服务器,因此不适合存储敏感信息。可以通过
HttpOnly和Secure标记增加安全性。 - 访问方式:通过 JavaScript 的
document.cookie接口进行读写,或在服务器端进行设置。
2. Storage (localStorage 和 sessionStorage)
- 用途:用于在客户端存储较大数据,可以通过 JavaScript 进行本地数据存储和访问,不会自动发送到服务器。通常用于本地持久化用户数据。
- 容量:
localStorage:每个域名通常有 5MB 到 10MB 的存储空间。sessionStorage:与localStorage类似,但数据仅在页面会话期间可用(页面关闭后数据即被清除)。
- 存储位置:客户端浏览器。
- 生命周期:
localStorage:持久化存储,直到手动删除。sessionStorage:仅在当前会话内有效,页面关闭后数据消失。
- 安全性:仅在客户端存储,不会自动发送到服务器,但数据仍然可以被 JavaScript 访问,因此不适合存储高度敏感的信息。
- 访问方式:通过 JavaScript 的
localStorage或sessionStorage接口进行读写。
3. InnoDB
- 用途:
InnoDB是 MySQL 数据库中的一种存储引擎,与前端开发直接关联较少。通常用于在服务器端的数据库中管理和存储数据,支持事务、外键等高级特性。适用于需要持久化、结构化存储的数据。 - 容量:理论上容量仅受限于服务器的硬件资源。
- 存储位置:服务器端数据库。
- 生命周期:数据的生命周期由数据库的设计和操作决定,可以是永久存储。
- 安全性:通过数据库权限控制和网络安全措施来保障数据的安全性,适合存储高度敏感的数据。
- 访问方式:通过 SQL 查询和数据库连接进行访问。
4. 补充:IndexedDB
IndexedDB 是一个功能强大的浏览器数据库,适用于需要在客户端存储和检索大量数据的场景。它超越了简单的键值对存储机制,如 localStorage 和 sessionStorage,并提供了对结构化数据的高级支持。
-
用途:
- 适合用于需要在客户端存储大量数据的应用,如离线应用、PWA(渐进式Web应用)等。
- 可以存储复杂的数据结构,包括对象、文件、Blob 等,远超出
localStorage或sessionStorage所支持的简单键值对存储。
-
特性:
- 大容量:
IndexedDB的存储容量相对较大,通常可以存储数百 MB 甚至更多的数据。
- 大容量:
订阅专栏 解锁全文
2396

被折叠的 条评论
为什么被折叠?



