localStorage用于长期存储数据,除非手动清除;sessionStorage仅在当前会话有效,关闭标签页后清除。两者均遵循同源策略,只能存储字符串,存取对象需用JSON.stringify和JSON.parse转换。适用于保存用户偏好、临时表单数据等场景,合理使用可提升用户体验。

JavaScript 提供了两种在浏览器中操作本地存储的方式:localStorage 和 sessionStorage。它们都能在用户浏览网页时保存数据,但使用场景和生命周期略有不同。掌握这两种机制,能帮助你在开发中更好地管理客户端状态。
localStorage:持久化本地存储
localStorage 用于长期保存数据,除非用户手动清除浏览器缓存或通过代码删除,否则数据不会过期。
常见用途包括保存用户偏好设置、主题选择、登录状态标识等。
基本操作方法如下:
立即学习“Java免费学习笔记(深入)”;
- localStorage.setItem('key', 'value') —— 存储数据
- localStorage.getItem('key') —— 获取数据
- localStorage.removeItem('key') —— 删除某项数据
- localStorage.clear() —— 清空所有数据
示例:
localStorage.setItem('username', 'Alice');const name = localStorage.getItem('username'); // 返回 'Alice'
localStorage.removeItem('username');
sessionStorage:会话级临时存储
sessionStorage 的用法与 localStorage 完全相同,区别在于其生命周期仅限于当前会话。一旦关闭浏览器标签页或窗口,数据就会被清除。
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
适合用于临时保存表单数据、页面状态等不需要长期保留的信息。
操作方式一致:
- sessionStorage.setItem('tempData', 'draft')
- sessionStorage.getItem('tempData')
- sessionStorage.removeItem('tempData')
- sessionStorage.clear()
例如,在填写一个多步骤表单时,可以用 sessionStorage 暂存前几步的内容,防止刷新丢失。
注意事项与使用技巧
虽然 localStorage 和 sessionStorage 使用简单,但有几个关键点需要注意:
- 只能存储字符串。如果要保存对象或数组,需用 JSON.stringify() 转换后再存,读取时用 JSON.parse() 解析。
- 同源策略限制:不同域名无法访问彼此的存储数据。
- 容量有限,通常为 5-10MB,具体取决于浏览器。
- 同步操作,不会阻塞页面,但在大量数据时可能影响性能。
示例:存储对象
const user = { name: 'Bob', age: 25 };localStorage.setItem('user', JSON.stringify(user));
const savedUser = JSON.parse(localStorage.getItem('user'));
基本上就这些。localStorage 适合长期保存,sessionStorage 适合临时缓存。合理使用它们,可以显著提升用户体验。









