Programación Web y Scripting > JavaScript

 class en javascriptII

(1/1)

nicolas_alvarezmon:
Q tal Experto tengo la siguiente class lo que quisiera es mostrar en pantalla con la
clase imprime() seria los datos "hp" y "semitorre", la ejecuto la pagina y me da el alert
y me dice en el primer cartel (alert) undefined y en el segundo carte (alert) "semitorre". Lo q tendria
q hacer seria mostrar en el 1mer alert "hp" y en el 2do alert "semitorre".
A qui esta el codigo. Mas abajo probe de otra manera haciendo una clase "caja" q involucre
a las 3 fx imprime, interior , exterior, y no fx tampoco. Da el mismo error q el codigo1.
Quiza falte algo no se me ocurre que.

Codiogo1

<script>
function imprime()
{
alert (this.marca);
alert(this.caja);
}

function interior(marca)
{
this.marca=marca;
this.imprime=imprime;
}
function exterior(caja)
{
this.caja=caja;
this.imprime=imprime;
}
mipc=new interior("hp")
mipc=new exterior("semitorre")
mipc.imprime();
</script>

+++++++++++++++++
codigo 2

<script>
function caja(imprime,interior,exterior)
{
this.imprime=imprime;
this.interior=interior;
this.exterior=exterior;
}

function imprime()
{
alert (this.marca);
alert(this.caja);
}

function interior(marca)
{
this.marca=marca;
this.imprime=imprime;
}

function exterior(caja)
{
this.caja=caja;
this.imprime=imprime;
}

mipc=new caja()
mipc=new interior("hp")
mipc=new exterior("semitorre")
mipc.imprime();

</script>
Saludos cordiales.

arielb:
Hola, bienvenido al foro.
 Bueno cada ves que usas la palabra new lo que haces es crear una nueva instancia( o una nueva copia ).
 Por lo que al hacer :
 

--- Código: Javascript --- mipc= new interior("hp")
 utiliza le método interior
 

--- Código: Javascript --- function interior(marca) {        this.marca = marca;        this.imprime = imprime;}y si observamos solo existe marca y no caja por lo que se puede deducir que en la instancia 1 no existe caja y nos va a enviar "undefined".
y al hacer dos instancias con el mismo nombre el metodo no imprime todo ya que está mostrando el último valor cargado.

Saludos,

Navegación

[0] Índice de Mensajes

Ir a la versión completa