logo
HTML

Cookie、SessionStorage 和 LocalStorage 的区别?

Updated Apr 14, 2026

面试回答

考察点:存储容量、生命周期、与服务端交互


这三者都是前端存储方案,但设计初衷和使用场景截然不同。

首先是 Cookie: 它的最大特点是会自动携带在 HTTP 请求头中发送给服务器。所以它主要用于身份验证(Session ID)。缺点也很明显:容量小(约 4KB),每次请求都带会增加带宽,且操作 API 比较原始,需要手动封装。

其次是 Web Storage (LocalStorage & SessionStorage): 它们容量大(通常 5-10MB),API 简单(setItem, getItem),且不会自动发送给服务器,节省了带宽。

  • LocalStorage:数据持久化,除非用户手动清除,否则一直存在。适合存用户主题配置、购物车草稿等。
  • SessionStorage:数据仅在当前会话窗口有效,关闭标签页即销毁。适合存一次性表单数据或敏感信息的临时缓存。

在大厂项目中,我们通常遵循‘认证用 Cookie(HttpOnly 防 XSS),业务数据用 LocalStorage/SessionStorage’的原则。