Foros del Web » Programando para Internet » Javascript »

Como leer o comprender este codigo

Estas en el tema de Como leer o comprender este codigo en el foro de Javascript en Foros del Web. Que tal amigos, estaba viendo unos ejemplos y encontre este codigo, pero la verdad no entiendo muy bien esta linea Square.prototype = new Rectangle(); Si ...
  #1 (permalink)  
Antiguo 03/11/2012, 13:25
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años
Puntos: 131
Como leer o comprender este codigo

Que tal amigos, estaba viendo unos ejemplos y encontre este codigo, pero la verdad no entiendo muy bien esta linea

Square.prototype = new Rectangle();

Si se le pasaran los parametros a y b, entonces Square tendria 2 nuevas propiedades a y b, pero como no se le pasan parametros en ese caso que pasa

Código Javascript:
Ver original
  1. function Rectangle (a, b){
  2.     this.a = a;
  3.     this.b = b;
  4. }
  5.  
  6. Rectangle.prototype.Area = function () {
  7.     return this.a * this.b;
  8. };
  9.  
  10. function Square (a) {
  11.     Rectangle.call (this, a, a);
  12. }
  13.  
  14. Square.prototype = new Rectangle();
  15.  
  16. var rect = new Square (3);
  17. document.write (rect.Area ());  // display: 9

Espero me puedan aclarar esto, o pasarme una liga que tenga una explicacion

Saludos y gracias

Última edición por hackjose; 03/11/2012 a las 14:06
  #2 (permalink)  
Antiguo 03/11/2012, 14:30
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como leer o comprender este codigo

buenas,
no pasaría nada si le provees los parámetros o si lo dejas en blanco. si le das parámetros, básicamente el prototipo del constructor Square tendría las propiedades con valores asignados. si no le das argumentos, Square tendría las mismas propiedades pero con el valor por defecto cuando no se asigna un valor a las propiedades o variables, undefined. en este caso, no tiene importancia si le pasas argumentos porque luego el constructor Square reasigna los valores cuando se invoca Square. Rectangle.call(this, a, a);
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 17:08.