[Manual] Sobrecarga de metodos en Javascript

Jhon resig escribio una forma de realizar la sobrecarga de metodos de una forma sencilla, y facil, que nos permitira agregar funcionalidad a nuestras clases.

A cotinuacion les pongo un extracto de este concepto.

La forma que Jhon desarrollo para la sobrecarga de metodos es la siguiente.

// addMethod – By John Resig (MIT Licensed)
function addMethod(object, name, fn){
var old = object[ name ];
object[ name ] = function(){
if ( fn.length == arguments.length )
return fn.apply( this, arguments );
else if ( typeof old == ‘function’ )
return old.apply( this, arguments );
};
}

Su uso viene ha ser de la siguiente forma.

function Users(){
addMethod(this, “find”, function(){
// Find all users…
});
addMethod(this, “find”, function(name){
// Find a user by name
});
addMethod(this, “find”, function(first, last){
// Find a user by first and last name
});
}

O se puede usar como un objeto “prototype” de la siguiente forma

Users(){}
addMethod(Users.prototype, “find”, function(){
// Find all users…
});
addMethod(Users.prototype, “find”, function(name){
// Find a user by name
});
addMethod(Users.prototype, “find”, function(first, last){
// Find a user by first and last name
});

Y se los métodos sobrecargados se usarían de la siguiente forma

var users = new Users();
users.find(); // Finds all
users.find(”John”); // Finds users by name
users.find(”John”, “Resig”); // Finds users by first and last name
users.find(”John”, “E”, “Resig”); // Does nothing

Mas informacion en el blog de Jhon Resig | JavaScript Method Overloading

Related posts:

  1. [Tip-Javascript] Desempaquetando scripts Atendiendo a un email que me llego, de parte de...
  2. [Javascript] JavaScript HTML Parser: Mejorando nuestros HTML’S Muchos quizas creyeron que ya no postearia, pero se equivacaron,...
  3. :: Javascript :: Creacion de funciones Hoy estaba pensado sobre todas las formas que hay para...
  4. [Librerias-Ajax] Los secretos de las librerias y Frameworks Javascript Las librerias o Frameworks Javascript, sin duda son unas herramientas...
  5. : Ajax : Tecnica de uso de ajax elegante y eficaz Para el uso de Ajax nativamente, casi siempre uso las...

Related posts brought to you by Yet Another Related Posts Plugin.

Comentar

* Name, Email, Comment are Required

Mis Tweets Ajaxman


Categorias

Historico de entradas publicadas