--- title: Storage slug: Web/API/Storage translation_of: Web/API/Storage ---
{{APIRef("Web Storage API")}}
Die Storage
-Schnittstelle der Web-Storage-API ermöglicht den Zugriff auf einfache Schlüssel-Wert-Datenbanken des Browsers, in denen Daten mit einer Domain verknüpft gespeichert werden können.
In {{domxref("Window.sessionStorage")}} gespeicherte Daten verfallen mit Ablauf der Sitzung (in der Regel dem Schließen des Browsers), {{domxref("Window.localStorage")}} speichert die Daten hingegen grundsätzlich zeitlich unbegrenzt.
Storage
-Objekt gespeicherten Datensätze.In diesem Beispiel wird auf das Storage
-Objekt localStorage
zugegriffen.
Zuerst wird mit !localStorage.getItem('bgcolor')
geprüft, ob das Objekt keinen Datensatz namens bgcolor
enthält. Ist der Datensatz bgcolor
nicht vorhanden, wird populateStorage()
aufgerufen, um Werte aus der Seite auszulesen und mittels {{domxref("Storage.setItem()")}} im Storage
-Objekt zu speichern.
Anschließend folgt der Aufruf der Funktion setStyles()
, die alle Daten mittels {{domxref("Storage.getItem()")}} ausliest und die Darstellung der Seite entsprechend ändert.
if(!localStorage.getItem('bgcolor')) { populateStorage(); } setStyles(); function populateStorage() { localStorage.setItem('bgcolor', document.getElementById('bgcolor').value); localStorage.setItem('font', document.getElementById('font').value); localStorage.setItem('image', document.getElementById('image').value); } function setStyles() { var currentColor = localStorage.getItem('bgcolor'); var currentFont = localStorage.getItem('font'); var currentImage = localStorage.getItem('image'); document.getElementById('bgcolor').value = currentColor; document.getElementById('font').value = currentFont; document.getElementById('image').value = currentImage; htmlElem.style.backgroundColor = '#' + currentColor; pElem.style.fontFamily = currentFont; imgElem.setAttribute('src', currentImage); }
Anmerkung: Dieses Beispiel kann unter Web Storage Demo ausprobiert werden.
Spezifikation | Status | Kommentar |
---|---|---|
{{SpecName('Web Storage', '#the-storage-interface', 'Storage')}} | {{Spec2('Web Storage')}} |
{{CompatibilityTable}}
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
localStorage | 4 | {{CompatVersionUnknown}} | 3.5 | 8 | 10.50 | 4 |
sessionStorage | 5 | {{CompatUnknown}} | 2 | 8 | 10.50 | 4 |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 2.1 | {{CompatVersionUnknown}} | {{ CompatUnknown }} | 8 | 11 | 3.2[1] |
[1] Seit iOS 5.1 speichert Safari Mobile in localStorage
abgelegte Daten im Cache-Verzeichnis. Dieses wird in unregelmäßigen Abständen vom Betriebssystem teilweise geleert, spätestens jedoch, sobald nur noch wenig Speicherplatz zur Verfügung steht.
Desweiteren verhindert der private Modus von Safari Mobile jegliche Nutzung von localStorage
.
Die Speicherkapazität von localStorage
und sessionStorage
. unterscheidet sich von Browser zu Browser (siehe diese detailierte Aufstellung der Speicherkapazitäten für verschiedene Browser).