Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnología web para desarrolladores
  2. API web
  3. API de almacenamiento web

Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.

View in EnglishAlways switch to English

API de almacenamiento web

LaAPI de almacenamiento web proporciona los mecanismos mediante los cuales el navegador puede almacenar información de tipo clave/valor, de una forma mucho más intuitiva que utilizando cookies.

Almacenamiento web, conceptos y uso

Los dos mecanismos en el almacenamiento web son los siguientes:

  • sessionStorage mantiene un área de almacenamiento separada para cada origen que está disponible mientras dure la sesión de la página (mientras el navegador esté abierto, incluyendo recargas de página y restablecimientos).
  • localStorage hace lo mismo, pero persiste incluso cuando el navegador se cierre y se reabra.

Estos mecanismos están disponibles mediante las propiedadesWindow.sessionStorage yWindow.localStorage (dicho con más precisión, en navegadores con soporte, el objetoWindow implementa los objetosWindowLocalStorage yWindowSessionStorage, en los cuales se basan las propiedadeslocalStorage ysessionStorage). Al invocar uno de éstos, se creará una instancia del objetoStorage, a través del cual los datos pueden ser creados, recuperados y eliminados. sessionStorage y localStorage utilizan un objeto de almacenamiento diferente según su origen — funcionan y son controlados por separado.

Nota:Acceder al Almacenamiento web desde IFrames de terceros está prohibido si el usuario tienedeshabilitadas las cookies de terceros (Firefox implementa este comportamiento a partir de laversión 43).

Interfaces de almacenamiento web

Storage

Permite crear, recuperar y eliminar datos de un dominio y tipo de almacenamiento (sesión o local) específicos.

Window

La API de almacenamiento web extiende el objetoWindow con dos nuevas propiedades —Window.sessionStorage yWindow.localStorage — que proveen acceso a la sesión actual del dominio y a objetosStorage locales, respectivamente. También ofrece un manejador de eventoWindow.onstorage que se dispara cuando un área de la memoria cambia (por ejemplo, cuando se almacena un nuevo elemento).

StorageEvent

El eventostorage se dispara en el objetoWindow de un documento cuando un área de la memoria cambia.

Ejemplos

Para ilustrar algunos usos típicos del almacenamiento web, hemos creado un ejemplo simple, llamadoDemo de almacenamiento web. Lapágina de inicio proporciona controles que puedes utilizar para personalizar el color, la tipografía y la imagen decorativa. Cuando seleccionas una opción diferente, la página se actualiza instantáneamente; además, tus opciones se almacenan enlocalStorage, de forma que si abandonas la página y la vuelves a cargar, tus opciones son recordadas.

También creamos unapágina de salida del evento — si cargas esta página en otra pestaña y luego haces cambios a tus opciones en la página de inicio, verás que se muestra la información almacenada actualizada puesto que se dispara un eventoStorageEvent.

Especificaciones

Specification
HTML
# dom-localstorage-dev
HTML
# dom-sessionstorage-dev

Compatibilidad con navegadores

api.Window.localStorage

api.Window.sessionStorage

Navegación privada / Modo incógnito

La mayoría de los navegadores de hoy en día soportan una opción de privacidad llamada 'Modo incógnito', 'Navegación privada', o algo similar, que básicamente se asegura de que la sesión de navegación no deje rastros después de que el navegador se cierra. Esto es fundamentalmente incompatible con el almacenamiento web por obvias razones. Por ello, muchos navegadores están experimentando con diferentes escenarios para lidiar con esta incompatibilidad.

La mayoría de los navegadores han optado por una estrategia donde las API de almacenamiento siguen disponibles y aparentemente completamente funcionales, con la única gran diferencia de que todos los datos almacenados son eliminados después de cerrar el navegador. Para estos navegadores aún hay diferentes interpretaciones sobre qué debería hacerse con los datos almacenados existentes (de una sesión de navegación normal). ¿Deberían de estar disponibles para lectura cuando esté en modo privado? Entonces, hay algunos navegadores, sobre todo Safari, que han optado por una solución donde el almacenamiento está disponible, pero vacío, y tiene un cupo de 0 bytes asignado, por lo que se vuelve imposible usar esta memoria para escribir datos.

Los desarrolladores deberían de estar conscientes de estas diferentes implementaciones y tenerlas en cuenta a la hora de desarrollar aplicaciones web que depende de la API de almacenamiento web. Para más información, échale un vistazo aesta entrada de blog WHATWG que trata específicamente con este tema.

Ver también

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp