localStorage not working in Edge?

Niels picture Niels · Sep 3, 2015 · Viewed 28.9k times · Source

I am currently working on a some JS. It works fine in every browser apart from Microsoft Edge. The issue is quite simple: at the beginning of one of my scripts I declare a variable like so:

var something = localStorage.getItem('something'); 

Anyway the something doesn't exist yet, but the whole idea is that this can be used for reference in a later function. Firefox, Chrome, Opera and Safari don't have a problem with this but Edge does, so my question is, is the a quick fix? Or am i going to have to rewrite my whole script because of Edge?

This is the error that edge throws by the way.

 Unable to get property 'getItem' of undefined or null reference

Thanks!

Answer

nils picture nils · Sep 3, 2015

Local Storage didn't work for local files in IE9, so I imagine that this is still the case in MS Edge.

I just tested it in Edge with a server on localhost and your line of code worked just fine:

> var something = localStorage.getItem('something');
> undefined

It is possible that this was a security issue in earlier versions of IE and was just never updated as the browser was developed.

Although, it appears that localStorage and sessionStorage still don't work in Edge for HTML files accessed using the 'file://' protocol.