前端/移动开发面试题更新 2026-08-05

请说明在 JavaScript 中实现轻量级本地存储以读写用户偏好设置的方法,并比较不同方案的适用场景。

前端/移动开发技术原理技术选型JavaScript

考察说明

考查对浏览器本地存储API的理解及实际应用中的选型能力。

回答思路

  1. 【回答框架 1】轻量级本地存储方案主要有localStorage、sessionStorage和IndexedDB。localStorage适合存储少量键值对,数据持久保存,API同步简单;sessionStorage数据在会话结束后清除,适合临时数据;IndexedDB适合大量结构化数据,异步操作。
  2. 【回答框架 2】对于用户偏好设置,通常使用localStorage,因为它持久且容量足够(约5MB)。读取时使用getItem,写入使用setItem,注意存储的是字符串,对象需JSON序列化。
  3. 【回答框架 3】选型时还需考虑隐私和安全,避免存储敏感信息。如果数据需要跨标签页同步,可监听storage事件。对于更复杂的需求,可封装一个简单的存储工具类,统一处理序列化和异常。
  4. 【关键点 1】localStorage和sessionStorage是同步API,存储字符串,容量约5MB。
  5. 【关键点 2】IndexedDB适合大量结构化数据,异步操作,学习成本较高。
  6. 【关键点 3】用户偏好设置一般用localStorage,使用JSON.stringify和JSON.parse处理对象。
  7. 【关键点 4】注意隐私和安全性,不要存储敏感信息。
  8. 【关键点 5】监听storage事件可实现跨标签页同步。
  9. 【易错点 1】只使用localStorage而不考虑容量限制和隐私风险。
  10. 【易错点 2】忘记序列化导致存储错误数据。
  11. 【易错点 3】在服务端渲染或非浏览器环境直接使用localStorage会报错。