Вопрос:
Могу ли я переопределить функции «по умолчанию» в Javascript?
Справка:
Узнав, что у меня есть коллизии между объектами, хранящимися в localStorage
, я решил, что должен применить префикс ко всем ключам, чтобы избежать коллизий. Очевидно, что я мог бы создать функцию-обертку, но было бы намного лучше переопределить значение по умолчанию localStorage.getItem
& localStorage.setItem
напрямую, чтобы учесть мой префикс.
Мой пример полностью убивает Firefox, поскольку он рекурсивно называет себя, поэтому он явно не близок к решению. Возможно, это проясняет то, чего я хочу достичь.
Код:
Storage.prototype.setItem = function(key, value) {
this.setItem("prefix"+key, value);
};
Storage.prototype.getItem = function(key, value) {
return this.getItem("prefix"+key);
};