Herencia en JavaScript Más videos
Descripción del tema
//Super "class" var Animal = function(type){ this.type = type; } Animal.prototype.getType = function(){ return this.type; } var Dog = function(options){ this.breed = options.breed; } //Inheritance Dog.prototype = new Animal('Dog'); //attach methods to the Dog "class" Dog.prototype.run = function(){ console.debug('the '+this.breed+' '+this.type+' is running!'); } //new instance var beagle = new Dog({breed:'Beagle'}); //calling a method of the super "class" console.debug(beagle.getType()); beagle.run();La parte más importante del ejemplo anterior es donde se realiza la herencia, “Dog.prototype = new Animal('Dog');”. La variable Dog hace referencia a la función constructora del objeto Dog, “new Animal()” está creando un objeto Animal el cual es asignado al prototipo de la función constructora del objeto “Dog”; de esta forma el objeto Dog contendrá todos los método y propiedades el objeto “Animal” cuando se creen nuevas instancias.
Conclusión
La herencia simple es algo que utilizaremos cuando desarrollemos componentes, es necesario que tengamos este concepto en mente.Te gustaría recibir más tutoriales como este en tu correo?
Este tutorial pertenece al curso Aprendiendo Ext JS 3, te recomiendo revises el resto de los tutoriales ya que están en secuencia de menor a mayor complejidad.
Si deseas recibir más tutoriales como este en tu correo te recomiendo registrarte al curso, si ya eres miembro solo identifícate y registrate al curso, si no eres miembro te puedes registrar gratuitamente!
Si no gustas registrarte en este momento no es necesario! Aún así puedes recibir los nuevos tutoriales en tu correo! Jamás te enviaremos Spam y puedes cancelar tu suscripción en cualquier momento.
Regístrate a este curso
Este tutorial pertenece al curso Aprendiendo Ext JS 3, revisa todos los tutoriales que tenemos en este mismo curso ya que están en secuencia y van de lo más sencillo a lo más complicado.
Tendrás acceso a descargar los videos, códigos y material adicional.
Podrás resolver los ejercicios incluidos en el curso así como los Quizzes.
Llevarás un registro de tu avance.
7Comentarios
Hola que tal Muy buena información es algo importante de explotar para generar aplicaciones web mas poderosas saludos.
good
Una pregunta Crisfel por que en la consola primero imprime Dog y luego the Beagle Dog is running! si la primera sentencia era <pre name="code" class="javascript"> Dog.prototype.run = function(){ console.debug('the '+this.breed+' '+this.type+' is running!'); } </pre>
HalleyR, fíjate en lo ke hacen estas dos líneas. //lláma a imprimir en la consola el tipo. 1. console.debug(beagle.getType()); //lláma el método ó función run, ke tiene dentro una llamada a imprimir en la consola 2. beagle.run();
Muchas gracias. Me ha aclarado el tema de las clases en javascript. Me temo que HTML5 va a obligar a usar mucho esto :)
Buenos dias. Estoy en mis primeros pininos de ExtJs y he optado por usarlo con CodeIgniter, ya que los que conosco usan php para todo. Me han metido en la cabeza el utilizar Spring MVC Framework y Hibernate Framework. Mi pregunta es si tendria mucha ventaja sobre el php. Muchas Gracias
Si el objecto animal también contiene una funcion run, ¿javascript sustituye el prototype?