Como posso adicionar método personalizado à classe de armazenamento em javascript

StackOverflow https://stackoverflow.com/questions/20353420

  •  25-08-2022
  •  | 
  •  

Pergunta

Posso fazer isso ?

localStorage.myfunction = function () { ... }

Se não por quê? Existem métodos alternativos?

Foi útil?

Solução

Eu teria muito cuidado ao modificar o comportamento de objetos como este. Normalmente é melhor fornecer um invólucro para o localStorage (ou usar Store.js ou outra biblioteca) para fornecer os recursos que você deseja.

No caso que você Faz Deseja adicionar um método ou propriedade ao LocalStorage, você pode fazê -lo adicionando -o ao protótipo do construtor:

typeof(localStorage.prototype); // "undefined"
localStorage.constructor // function Storage() { [native code] }

Storage.prototype.foo = function () { return 'foo'; }
// setting a method on the constructor allows each localStorage instance
// to inherit and use it 
localstorage.foo() // 'foo'

Outras dicas

Por que você quer fazer algo assim? usar:

window.myfunction = function(){
    // do stuff here
};

Para salvar sua função no nível do navegador.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top