JavaScript提供多种浏览器数据存储API:localStorage/sessionStorage用于字符串键值对,IndexedDB适合结构化大数据,Cache API专用于Service Worker缓存网络资源,cookie仅适用于小量凭证数据,Web SQL已废弃。

在浏览器中储存数据,JavaScript 提供了几个原生 API,适用于不同场景:需要简单键值对就用 localStorage 或 sessionStorage;要存结构化、大量或带索引的数据,就用 IndexedDB;临时缓存资源可配合 Cache API(常与 Service Worker 一起用)。
localStorage 和 sessionStorage
两者都提供简单的字符串键值对存储,API 相同,区别在于生命周期:
- localStorage:数据永久保存,除非手动清除(关闭标签页也不丢失)
- sessionStorage:仅在当前浏览器标签页有效,关闭即清空
基本用法:
localStorage.setItem('username', 'Alice');
const name = localStorage.getItem('username');
localStorage.removeItem('username');登录后复制
⚠ 注意:只能存字符串。对象需先 JSON.stringify(),读取时再 JSON.parse()。
立即学习“Java免费学习笔记(深入)”;
IndexedDB:浏览器的“本地数据库”
适合存大量结构化数据(如离线消息、用户文档、图片 blob),支持事务、索引、查询,但 API 较底层、异步。
- 用
window.indexedDB.open()打开或创建数据库 - 通过
objectStore存取数据,类似表;可用index加速按非主键字段查询 - 所有操作基于请求对象(
IDBRequest),靠事件回调(onsuccess/onerror)处理结果
例子:添加一条用户记录
标签: css javascript java html js json cookie 大数据 浏览器 app session
还木有评论哦,快来抢沙发吧~