0Pricing
HTML Academy · Lección

Obtener, establecer y eliminar elementos

Use la API Web Storage para leer y escribir datos

Obtener, establecer y eliminar elementos es una lección gratuita de HTML Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de HTML Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de HTML Academy incluye 4 lecciones en total.

La superficie de la API Storage

Tanto localStorage como sessionStorage exponen los mismos cuatro métodos principales: getItem(key), setItem(key, value), removeItem(key) y clear(). Son almacenes sencillos de pares clave-valor respaldados por el navegador.

setItem almacena cadenas

localStorage.setItem("theme", "dark") persiste una cadena bajo la clave "theme". Tanto la clave como el valor deben ser cadenas; los valores que no sean cadenas se convierten mediante String() antes de almacenarse, lo que corrompe silenciosamente los objetos y las matrices.

localStorage.setItem("theme", "dark");
localStorage.setItem("count", "42");

Almacenamiento de objetos con JSON

Para almacenar datos estructurados, serialícelos con JSON: localStorage.setItem("user", JSON.stringify(user)). Para leerlos, use: const user = JSON.parse(localStorage.getItem("user")). Incluya siempre el análisis en un bloque try/catch por si el valor almacenado tiene un formato incorrecto.

const user = { name: "Ada", age: 30 };
localStorage.setItem("user", JSON.stringify(user));
const loaded = JSON.parse(localStorage.getItem("user"));

getItem devuelve una cadena o null

getItem("missing") devuelve null cuando la clave no existe; nunca devuelve undefined. Use el operador de coalescencia nula para proporcionar valores predeterminados: const theme = localStorage.getItem("theme") ?? "light".

Sintaxis de acceso mediante propiedades

También puede usar la notación de corchetes y de punto: localStorage.theme = "dark" y localStorage["theme"]. Ambas funcionan, pero ocultan la intención; prefiera las llamadas explícitas a los métodos, que comunican claramente que se trata de almacenamiento persistente y no de una propiedad de objeto.

removeItem y clear

localStorage.removeItem("theme") elimina una sola clave. localStorage.clear() borra todas las claves del origen actual. clear() es destructivo; no lo llame nunca sin un motivo de peso, ya que elimina los datos establecidos por todos los scripts de la página.

Iteración de las claves almacenadas

Use localStorage.length y localStorage.key(index) para recorrer todas las claves almacenadas, o expanda Object.keys(localStorage). Esto resulta útil para migraciones, depuración y limpieza basada en prefijos, como eliminar todas las claves que comiencen por "cache:".

for (let i = 0; i < localStorage.length; i++) {
  const key = localStorage.key(i);
  console.log(key, localStorage.getItem(key));
}

Errores de cuota superada

Los navegadores asignan aproximadamente entre 5 y 10 MB por origen. Superar la cuota produce un error QuotaExceededError. Incluya setItem en un bloque try/catch cuando almacene valores potencialmente grandes, como cachés de imágenes o borradores de documentos, para evitar que el error bloquee la aplicación.

try {
  localStorage.setItem("draft", largeString);
} catch (e) {
  if (e.name === "QuotaExceededError") {
    // free space, warn user, or fall back
  }
}

Espacios de nombres para las claves

El almacenamiento se comparte en todo el origen. Prefije las claves con el nombre de la aplicación o de la funcionalidad (app:settings, cart:items) para evitar colisiones con otros scripts, bibliotecas de terceros y extensiones del navegador que se ejecuten en el mismo origen.

Síncrono y bloqueante

La API Storage es completamente síncrona: cada llamada bloquea el hilo principal hasta que se completan las operaciones de E/S del disco. Evite almacenar blobs muy grandes o llamar a setItem dentro de bucles estrechos; agrupe las actualizaciones en un único objeto serializado.

sessionStorage frente a localStorage

La misma superficie de API, pero con distinta duración. sessionStorage se borra al cerrar la pestaña; localStorage persiste entre reinicios del navegador. Elija sessionStorage para el estado efímero de un asistente y localStorage para las preferencias del usuario que deban sobrevivir a una actualización.

Comprobación de conocimientos

¿Qué devuelve localStorage.getItem("missing-key") cuando la clave nunca se ha establecido?

Resumen

getItem, setItem, removeItem y clear son los cuatro pilares de Web Storage. Los valores siempre son cadenas, por lo que debe envolver los datos estructurados con JSON. Tenga en cuenta los valores null, QuotaExceededError y los espacios de nombres para compartir el origen correctamente con otros scripts.

Preguntas frecuentes

¿La lección «Obtener, establecer y eliminar elementos» es gratis?

Sí — el texto completo de «Obtener, establecer y eliminar elementos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de HTML Academy, actualiza a CoddyKit PRO. El curso de HTML Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Obtener, establecer y eliminar elementos»?

Use la API Web Storage para leer y escribir datos Practicas HTML Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar HTML Academy?

No se requiere experiencia previa. HTML Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Obtener, establecer y eliminar elementos»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de HTML Academy?

Sí. Cada lección de HTML Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. localStorage frente a sessionStorage
  2. Obtener, establecer y eliminar elementos
  3. Escuchar eventos de almacenamiento
  4. Seguridad: qué no debe almacenar nunca
← Volver a HTML Academy