I have been doing the following:
var store = window.localStorage;
store.setItem()
but now I see code doing this:
localStorage.setItem()
Do both do the same thing?
I have been doing the following:
var store = window.localStorage;
store.setItem()
but now I see code doing this:
localStorage.setItem()
Do both do the same thing?
"window" is the global object in Javascript, so you can ommit it if there's no chance for a conflict
there is no difference between the window.localStorage and localStorage the
Window
is the global objectthe window is the default prefix
but the correct one is
window.localStorage
because the localStorage attribute is part of window object.Unless you've declared a variable named
localStorage
in a custom defined scope, they're the same.localStorage
refers towindow.localStorage
. In fact every variable in global namespace can be accessed aswindow.<variableName>
For example:
Supposedly, window.localStorage makes the localStorage faster to be found than just writing localStorage.
Storing a reference to it on a variable makes it even faster.
Anyway, these improvements are negligible on modern browsers. It only becomes useful if performance is being an issue.
Anyway, you get a possible idea about why it is being done like that.