Hola,
Haré un similitud en el caso de la siguiente clase:
Código PHP:
Ver originalclass Punto{
var $x=0;
var $y=0;
function __construct($x,$y){
$this->x=$x;
$this->y=$y;
}
}
Del cual se pude crear un objeto escribiendo
new Punto(x,x), en javascript es muy similar.
Primero necesitas crear el constructor,
antes que nada, el constructor es simplemente cualquier función:
Código Javascript
:
Ver original//Puede ser de las siguientes maneras:
//Así (que no lo recomiendo)
var Punto = new Function("
this.x=arguments[0];
this.y=arguments[1];
");
// O así(la preferira por casí todos los programadores de Javascript[incluyendome])
var Punto = function( x, y ) {
this.x = x;
this.y = x;
};
// O así(la forma tradicional)
function Punto( x, y ){
this.x = x;
this.y = x;
}
Una vez creado el constructor, ya puedes crear el prototipo de tu clase, con el que podrás implementar el objeto, para ello simplemente puedes ir agregando las propiedades o métodos del constructor, en tu caso son propiedades (x, y).
Código Javascript
:
Ver original//Los objetos "prototype" y "this", son las palabras clave para transformar una función en un constructor para un objeto
// Puede ser así
Punto.prototype.x = "";
Punto.prototype.y = "";
// O así
Punto.prototype= {
x: "",
y: ""
};
// O como los ejemplos anteriores, es decir, dentro de la función, tal como:
var Punto = function( x, y ) {
/* Agregando propiedades al objeto "this", ya podrá ser usada como un
constructor*/
this.x = x;
this.y = x;
};
Y para utilizar el constructor, para crear un objeto, simplemente haces de la mísma forma que en PHP, es decir:
Código Javascript
:
Ver originalvar MiObjeto = new Punto( 9, 1 );
En resumen, puedes hacer todo en la mísma función usando "this" o puedes hacerlo aparte usando "prototype".
Espero que te sirva de algo, saludos.