Duplicar posible:
How to “properly” create a custom object in JavaScript?¿Cómo hacer objetos personalizados en Javascript?
Lo siento si esto ha sido respondida antes, pero estoy un poco abrumado por la cantidad de opciones que se ofrecen para estar en lo que se refiere a la creación de objetos personalizados en Javascript . No estoy seguro de sus respectivas fortalezas o debilidades o si difieren o no en absoluto.
Estas son algunas de las diferentes maneras que he encontrado para construir objetos:
1: nuevo objeto
person = new Object()
person.name = "Tim Scarfe"
person.height = "6Ft"
person.run = function() {
this.state = "running"
this.speed = "4ms^-1"
}
2: notación literal de
timObject = {
property1 : "Hello",
property2 : "MmmMMm",
property3 : ["mmm", 2, 3, 6, "kkk"],
method1 : function(){alert("Method had been called" + this.property1)}
};
3 : Funciones
function AdBox() {
this.width = 200;
this.height = 60;
this.text = 'default ad text';
this.prototype.move = function() {
// code for move method goes here
}
}
this.prototype.display = function() {
// code
}
Incluso vi algunas formas más pero parecían menos comunes ... Como puede ver, no estoy exactamente seguro de cuál es el estándar cuando alguien simplemente quiere un objeto simple con campos y métodos.
Gracias por leer.
en su función 'AdBox', debe ser' this.move = function' not 'this.prototype.move = function'. – zzzzBov
@zzzzBov: Sí, acabo de copiar y pegar desde [aquí] (http://javascript.about.com/library/bltut35.htm). Dijeron que podría hacerse de cualquier manera, pero hay diferencias. –
http://stackoverflow.com/questions/1595611/how-to-properly-create-a-custom-object-in-javascript#1598077 – zerkms