presume que tiene un objeto como éste:Cómo emular un constructor con ES5 Object.create y object literal sintaxis?
var Foo = {
x: 5,
sprite: new Image()
}
Problema: Quiero inicializar que el sprite con el src derecha. Sin embargo, cuando se utiliza la siguiente técnica de creación:
var f = Object.create(Foo);
no tengo un método constructor (también conocido como la función init) para configurar sprite.src = 'cool.png';
Mi pregunta:
si estoy usando el objeto técnica literal, y Object.create()
, cuando en realidad no lo inicializar un poco de mi estado interno (como el ejemplo de la new Image()
)
mi solución:
var Foo = {
create: function() {
var f = Object.create(Foo);
f.sprite.src = 'cool.png';
return f;
}
}
Sin embargo, no sé si ese es un gran patrón. Me gustaría hacer esto como "JavaScript Way" si hay una forma. :)
Gracias!
Parece que prefiere hacer su complejo código de tomar ventaja de la simplicidad del sistema de objetos. – ChaosPandion