Entrada

Guía sobre localStorage y sessionStorage en JavaScript

✨ ¿Qué son localStorage y sessionStorage?

En JavaScript, tanto localStorage como sessionStorage son interfaces para almacenar datos clave-valor en el navegador. Ambas ofrecen una forma sencilla de guardar información, pero tienen diferencias clave en su funcionamiento.


🔎 Diferencias Principales: Tabla Comparativa (Vertical)

Persistencia

  • localStorage: Los datos persisten incluso después de cerrar el navegador o reiniciar el dispositivo.
  • sessionStorage: Los datos se eliminan cuando se cierra la pestaña o ventana del navegador.

Capacidad

  • localStorage: Generalmente hasta 5MB por dominio.
  • sessionStorage: Generalmente hasta 5MB por dominio.

Acceso entre pestañas

  • localStorage: Compartido entre todas las pestañas del mismo dominio.
  • sessionStorage: Único para cada pestaña o ventana.

API

  • Ambos: Igual para ambos (setItem, getItem, etc.).

🔄 Cómo Usarlos

🔒 Uso de localStorage

1
2
3
4
5
6
7
8
9
10
11
12
// Guardar un valor
localStorage.setItem('nombre', 'Juan');

// Recuperar un valor
const nombre = localStorage.getItem('nombre');
console.log(nombre); // Output: "Juan"

// Eliminar un valor
localStorage.removeItem('nombre');

// Limpiar todo el almacenamiento
localStorage.clear();

🔒 Uso de sessionStorage

1
2
3
4
5
6
7
8
9
10
11
12
// Guardar un valor
sessionStorage.setItem('sessionId', 'abc123');

// Recuperar un valor
const sessionId = sessionStorage.getItem('sessionId');
console.log(sessionId); // Output: "abc123"

// Eliminar un valor
sessionStorage.removeItem('sessionId');

// Limpiar todo el almacenamiento
sessionStorage.clear();

🔨 Ejemplo Práctico: Guardar Preferencias de Usuario

Supongamos que quieres guardar el tema oscuro como preferencia del usuario:

🔒 Con localStorage

1
2
3
4
5
6
// Guardar preferencia
localStorage.setItem('tema', 'oscuro');

// Leer preferencia
const tema = localStorage.getItem('tema');
document.body.classList.add(tema);

🔒 Con sessionStorage

1
2
3
4
5
6
// Guardar preferencia
sessionStorage.setItem('tema', 'oscuro');

// Leer preferencia
const tema = sessionStorage.getItem('tema');
document.body.classList.add(tema);

🔧 Cuándo Usar Cada Uno

  • Usa localStorage para datos que deben persistir más allá de la sesión del navegador, como configuraciones de usuario o tokens de autenticación.
  • Usa sessionStorage para datos temporales que solo necesitan estar disponibles durante la sesión actual, como identificadores de sesión o datos específicos de una pestaña.


❓ FAQ

¿Qué es localStorage en JavaScript?

localStorage guarda pares clave-valor de forma persistente en el navegador, permaneciendo después de cerrar la pestaña o el navegador hasta que se eliminen.

¿Qué es sessionStorage en JavaScript?

sessionStorage guarda pares clave-valor solo durante la sesión actual; sus datos se eliminan al cerrar la pestaña o ventana del navegador.

¿Cuál es la diferencia entre localStorage y sessionStorage?

localStorage mantiene los datos indefinidamente, mientras que sessionStorage los elimina al cerrar la pestaña. La API es la misma (setItem, getItem, etc.).

Esta entrada está licenciada bajo CC BY 4.0 por el autor.