2012-07-04 8 views
7

Plik HTMLS localStorage WebStorage ma maksymalny rozmiar 5 MB.Czy maksymalny rozmiar HTMLS localStorage zawiera nazwy kluczy?

Czy obejmuje to nazwy kluczy?

Na przykład, gdybym użył nazw kluczowych "dość długa nazwa-klucza-i-to-jest-tylko-1" zamiast "klucz1", czy wcześniej zabrakłoby mi miejsca?

Na nieco pokrewny temat; czy istnieje jakaś konwencja de facto nazywania kluczy localStorage? W jaki sposób zapobiega się kolizjom przestrzeni nazw podczas korzystania ze skryptów JS stron trzecich?

Odpowiedz

8

Czy obejmuje to nazwy kluczy?

Tak, są to dane, które stają się częścią danych, np. Identyfikują dane, które przechowujesz, a następnie je odzyskują, aby również mogły zostać zapisane.

Jak uniknąć kolizji przestrzeni nazw podczas korzystania ze skryptów innych firm JS ?

To dobre pytanie, zwykle prefiks localStorage z nazwą aplikacji. Chociaż lepszym rozwiązaniem byłoby utworzenie skrótu, np. Jakiegoś algorytmu, który akceptuje ciąg znaków, np. Nazwę aplikacji, itp., A później czytając, ponownie ich użyjesz.

+0

Obecnie wybieram prefiks mojej aplikacji (lub raczej , wtyczka jQuery) również. Hash może działać tylko wtedy, gdy jest powtarzalny, w takim przypadku możesz równie dobrze użyć nazwy. – Martijn

+0

@Martijn: Tak, miałem na myśli unikatowy hash, który nie ma szansy na kolizję i szyfrowanie oraz możliwość deszyfrowania (zapisywanie, pobieranie) :) To jest inny temat choćby – Blaster

6

Pierwsza uwaga, że ​​jest to zależne od implementacji jako the norm doesn't give a limit. Więc nie powinieneś polegać na rozmiarze.

Po drugie, tak, limit w dzisiejszych przeglądarkach zawiera nazwy: jest to rozmiar przestrzeni dyskowej ("miejsce na dysku").

Aby uniknąć kolizji, używam przestrzeni nazw (np. myplugin.mypart.myval). 5 MB jest już duże dla pamięci, która może zostać usunięta lub niedostępna w dowolnym momencie, więc nigdy nie myślałem o zmniejszeniu rozmiaru kluczy ...

+0

Byłoby pożytecznym używanie kilku klawiszy i łączenie danych Jeśli to możliwe? – Martijn

+0

Jeśli naprawdę potrzebujesz zmaksymalizować wykorzystanie przestrzeni, tak. Należy jednak uważać, że istnieją nieodłączne ograniczenia w korzystaniu z niekontrolowanego miejsca w przeglądarce, które można zastąpić lub gorzej (większość ludzi ma więcej niż jedną przeglądarkę). –

+1

Nie chodzi o zminimalizowanie mojego własnego śladu składowania, ale raczej o zmaksymalizowanie przestrzeni dostępnej dla innych skryptów JS. 5MB to dużo miejsca ... chyba że każdy skrypt JS zacznie traktować 5MB jako "dość dużo miejsca". – Martijn

Powiązane problemy