quinta-feira, 24 de fevereiro de 2011

Dicas de Programação: Como escrever/reescrever um método de um objeto em Javascript

Vamos a mais uma dica de programação, agora de Javascript :)

Quem nunca quis usar algo assim em Javascript:

var teste = " aaaa ";
teste = teste.trim();
alert(teste);

Mas sempre ficamos decepcionados, pois não existe o método trim em um objeto String...

Pois é... Mas com esta dica, você pode criar algo assim!
Para que isso ocorra, você só precisa usar a propriedade prototype de qualquer classe. Por exemplo, na classe String:

String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}

Agora, você consegue executar o primeiro código!

Você pode fazer isso para qualquer tipo de classe em Javascript. Também existem métodos especiais que você pode reescrever, como o toString:

var Fracao = function() {};
Fracao.prototype.numerador = 0;
Fracao.prototype.denominador = 0;
Fracao.prototype.toString = function() {
return this.numerador + "/" + this.denominador;
}
var a = new Fracao();
a.numerador = 1;
a.denominador = 3;
alert(a);

É isso ai! Espero que isso ajude :)

Um comentário:

Unknown disse...

Isso ae, Take, o mestre Jedi do JS (Jedi script?!)