localSpeicher, Grenzwerte und Datenablauf bei Erreichen von Grenzwerten

8

Ich versuche Objekte in localStorage zu speichern, aber manchmal fehlt mir der Speicherplatz.

Wenn ich versuche, ein Objekt mit localStorage zu speichern, aber nicht genügend Speicher - gibt es eine Möglichkeit, einfach so viele lokale Daten zu löschen, wie benötigt, um diesen Speicherplatz freizugeben, indem die ältesten Elemente gelöscht werden?

Gibt es eine API in Browsern, mit der ich das tun kann?

    
cedivad 18.11.2013, 19:20
quelle

3 Antworten

8

Hier ist ein kleiner Proof of Concept, den ich gerade aufgepeppt habe. Es wird davon ausgegangen, dass eine Ausnahme ausgelöst wird, wenn Sie versuchen, Elemente zu speichern, und keinen Speicherplatz haben.

Code ist mit Anmerkungen versehen

%Vor%     
Benjamin Gruenbaum 18.11.2013, 19:39
quelle
5

Inspiriert von @ Benjamins genialem Proof-Of-Concept habe ich etwas von seinem Code verwendet, um mit einer anderen Lösung zu kommen, diese Funktion entfernt den am wenigsten verwendeten Wert. Zum Beispiel haben Sie einen Wert wie user_id , den Sie oft für diesen Wert lesen, aber wenn dieser zuerst hinzugefügt wurde, verlieren Sie ihn, wenn Sie keinen Speicherplatz mehr haben.

Diese Lösung wird also den Wert entfernen, je nachdem wie stark sie verwendet wurden

%Vor%

Auch wenn Ihre Datenanforderungen wirklich hoch sind, sollten Sie in Erwägung ziehen, zu indexedDB anstatt zu localStorage zu wechseln. : -)

    
ShrekOverflow 18.11.2013 20:04
quelle
1

Ich habe das in Google gefunden: Ссылка Ist eine Memcache-Bibliothek für den lokalen Speicher

    
Aguardientico 18.11.2013 19:45
quelle

Tags und Links