martes, 7 de diciembre de 2010

Objetos con JavaScript (POO) II

Ya se vió en el post anterior cómo crear un objeto y sus propiedades con javascript, esta vez crearemos un objeto con propiedades y métodos(en este ejemplo sólo declararemos un método).
Para asignar un método a un objeto, primero declaramos el método:


//Method
function GetNombreCompleto()
{
var nombreCompleto = this.Nombre + " " + this.Apellido;
return nombreCompleto;
}

Como vemos este método hace uso de la palabra clave 'this', esto lo hace para acceder a los valores de las propiedades del objeto al que estará conectado.
Ahora asignamos el método a nuestro objeto


//My Object:
function Persona(nombre,apellido,edad)
{
this.Nombre = nombre;
this.Apellido = apellido;
this.Edad = edad;
//Metodo:
this.GetNombreCompleto = GetNombreCompleto;
}

Para llamar al método lo hacemos de la siguiente manera:


persona.GetNombreCompleto()


A continuación el código completo:


<html>
<head>
<title>Test JavaScript Objects</title>
<script type="text/javascript">
//My Object:
function Persona(nombre,apellido,edad)
{
this.Nombre = nombre;
this.Apellido = apellido;
this.Edad = edad;
//Metodo:
this.GetNombreCompleto = GetNombreCompleto;
}

//Method
function GetNombreCompleto()
{
var nombreCompleto = this.Nombre + " " + this.Apellido;
return nombreCompleto;
}

function TestMyObject()
{
var persona;
persona = GetPersona();
var msg = "Nombre: " + persona.Nombre + "\n" + "Apellido: ";
msg += persona.Apellido + "\n" + "Edad: " + persona.Edad + "\nNombreCompleto: " + persona.GetNombreCompleto();
alert(msg);

}

function GetPersona()
{
var persona = new Persona("Pedro","Picapiedra",40);
return persona;
}

</script>
</head>
<body>
<div style="width:300px;height:50px;background:#aaccdd;" onclick="TestMyObject()">
Test Object (clic aquí)
</div>

</body>
</html>

No hay comentarios:

Publicar un comentario