Native localStorage functions are usually faster.

This commit is contained in:
Nicolas Stepien 2012-03-17 12:43:14 +01:00
parent a70a237f8b
commit 9a8fee2e3c
2 changed files with 8 additions and 14 deletions

View File

@ -512,26 +512,23 @@
}, },
set: function(name, value) { set: function(name, value) {
name = NAMESPACE + name; name = NAMESPACE + name;
localStorage[name] = JSON.stringify(value); localStorage.setItem(name, JSON.stringify(value));
return GM_setValue(name, JSON.stringify(value)); return GM_setValue(name, JSON.stringify(value));
} }
} : { } : {
"delete": function(name) { "delete": function(name) {
name = NAMESPACE + name; return localStorage.removeItem(NAMESPACE + name);
return delete localStorage[name];
}, },
get: function(name, defaultValue) { get: function(name, defaultValue) {
var value; var value;
name = NAMESPACE + name; if (value = localStorage.getItem(NAMESPACE + name)) {
if (value = localStorage[name]) {
return JSON.parse(value); return JSON.parse(value);
} else { } else {
return defaultValue; return defaultValue;
} }
}, },
set: function(name, value) { set: function(name, value) {
name = NAMESPACE + name; return localStorage.setItem(NAMESPACE + name, JSON.stringify(value));
return localStorage[name] = JSON.stringify(value);
} }
}); });

View File

@ -434,21 +434,18 @@ $.extend $,
set: (name, value) -> set: (name, value) ->
name = NAMESPACE + name name = NAMESPACE + name
# for `storage` events # for `storage` events
localStorage[name] = JSON.stringify value localStorage.setItem name, JSON.stringify value
GM_setValue name, JSON.stringify value GM_setValue name, JSON.stringify value
else else
delete: (name) -> delete: (name) ->
name = NAMESPACE + name localStorage.removeItem NAMESPACE + name
delete localStorage[name]
get: (name, defaultValue) -> get: (name, defaultValue) ->
name = NAMESPACE + name if value = localStorage.getItem NAMESPACE + name
if value = localStorage[name]
JSON.parse value JSON.parse value
else else
defaultValue defaultValue
set: (name, value) -> set: (name, value) ->
name = NAMESPACE + name localStorage.setItem NAMESPACE + name, JSON.stringify value
localStorage[name] = JSON.stringify value
$$ = (selector, root=d.body) -> $$ = (selector, root=d.body) ->
Array::slice.call root.querySelectorAll selector Array::slice.call root.querySelectorAll selector