Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does HTML5 localStorage maximum size include key names?

HTML5's localStorage WebStorage has a maximum size of 5MB.

Does this include the key names?

For instance, if I were to use key names "quite-a-long-key-name-and-this-is-only-1" instead of "key1", would I run out of space sooner?

On a slightly related topic; is there any de-facto convention for naming localStorage keys? How are namespace collisions prevented when using third party JS scripts?

like image 287
Martijn Avatar asked Jul 04 '12 18:07

Martijn


People also ask

What is the size limit of localStorage in JavaScript?

localStorage limit in your Browser is 5000 KBs. This javascript code will run by adding continuously increasing length strings until the browser engine throws an exception. After this point, it will clear the test data and will set a size key in localStorage that will store the size of localStorage in kilobytes (KBs).

Is there any limit for the key for localStorage?

Is there any limit (up to the amount of local storage available) for the key when using localStorage? Show activity on this post. Yes, the limit is 5MB per domain. Your string can be as long as you want. The total usage must, however, be under 5 MB.

Is there any limit (up to the amount of local storage available)?

Is there any limit (up to the amount of local storage available) for the key when using localStorage? Show activity on this post. Yes, the limit is 5MB per domain.

What is the maximum size of data we can store?

All the data stays on the client-side, thus there is a defined limitation regarding the length of the values, and we can currently store from 2 MB to 10 MB size of data depending upon the browser we use. Hey geek! The constant emerging technologies in the world of web development always keeps the excitement for this subject through the roof.


2 Answers

Does this include the key names?

Yes those do, they become part of data eg they identify data you store and later retrieve so that got to be saved as well.

How are namespace collisions prevented when using third party JS scripts?

That's a good question, I generally prefix localStorage with application name. Though a better approach would be to create a hash eg some algorithim that accepts a string like application name, etc and later when reading you use them again.

like image 162
Blaster Avatar answered Oct 15 '22 21:10

Blaster


First note that this is implementation dependent as the norm doesn't give a limit. So you shouldn't rely on the size.

Secondly, yes, the limit in today's browsers includes the names : this is the size of the storage space ("disk space").

In order to avoid collisions, I use namespace (eg myplugin.mypart.myval). 5 MB is already big for a storage that can be deleted or not available any more at any time so I never thought about reducing the size of the keys...

like image 41
Denys Séguret Avatar answered Oct 15 '22 22:10

Denys Séguret