text

Prototipos y Herencia en JavaScript

¿Qué son los prototipos en JavaScript?

En JavaScript, los prototipos son una característica fundamental del lenguaje que permite la herencia de propiedades y métodos entre objetos. En lugar de utilizar clases como en otros lenguajes de programación, JavaScript utiliza prototipos para crear objetos y compartir funcionalidades entre ellos.

¿Cómo funcionan los prototipos?

En JavaScript, cada objeto tiene un enlace interno a otro objeto llamado «prototipo». Cuando se accede a una propiedad o método en un objeto, JavaScript busca primero en el objeto mismo y, si no lo encuentra, sigue buscando en su prototipo.

Este proceso de búsqueda continúa hasta llegar al objeto «Object.prototype», que es el prototipo base de todos los objetos en JavaScript. Si la propiedad o método no se encuentra en ningún nivel del prototipo, se considera indefinido.

Creando prototipos en JavaScript

Para crear un prototipo en JavaScript, se utiliza la función constructora. Esta función se utiliza para definir las propiedades y métodos que serán compartidos por todos los objetos creados a partir de ella.

Por ejemplo:

JavaScript
function Persona(nombre, edad) {
  this.nombre = nombre;
  this.edad = edad;
}

Persona.prototype.saludar = function() {
  console.log("Hola, mi nombre es " + this.nombre);
};

En este ejemplo, la función constructora «Persona» define las propiedades «nombre» y «edad». El método «saludar» se define en el prototipo de «Persona» y será compartido por todos los objetos creados a partir de ella.

Herencia en JavaScript

La herencia en JavaScript se logra mediante la cadena de prototipos. Un objeto puede heredar propiedades y métodos de otro objeto al establecer su prototipo como el objeto del que desea heredar.

Por ejemplo:

JavaScript
function Estudiante(nombre, edad, carrera) {
  Persona.call(this, nombre, edad);
  this.carrera = carrera;
}

Estudiante.prototype = Object.create(Persona.prototype);
Estudiante.prototype.constructor = Estudiante;

Estudiante.prototype.estudiar = function() {
  console.log("Estoy estudiando " + this.carrera);
};

En este ejemplo, la función constructora «Estudiante» hereda las propiedades «nombre» y «edad» de «Persona» utilizando la función «call». Luego, se establece el prototipo de «Estudiante» como el prototipo de «Persona» utilizando «Object.create». Finalmente, se define el método «estudiar» en el prototipo de «Estudiante».

Los prototipos y la herencia en JavaScript son conceptos clave para comprender el funcionamiento del lenguaje. Aunque puede resultar un poco confuso al principio, entender cómo funcionan los prototipos y cómo se logra la herencia permite aprovechar al máximo las capacidades de JavaScript.

Los prototipos permiten compartir propiedades y métodos entre objetos, lo que facilita la reutilización de código y la creación de jerarquías de objetos. La herencia en JavaScript se logra estableciendo el prototipo de un objeto como el objeto del que desea heredar, lo que permite extender las funcionalidades de un objeto existente.

Tabla de Contenido

Contenido Adicional

programacion orientada a objetos
Programacion
Ego Cañari Torres

programacion orientada a objetos

La programación orientada a objetos (POO, por sus siglas en inglés) es un paradigma de programación que se enfoca en el uso de objetos para modelar y resolver problemas. Un objeto es una entidad que contiene datos y comportamientos. Los

Leer más »
Ilustración de la relación entre matemáticas y codificación
Programacion
Ego Cañari Torres

La Matemática y su impacto en la Programación

La programación y la matemática son dos disciplinas que están estrechamente relacionadas, la matemática es la base fundamental de la programación, y su influencia se puede apreciar en cada línea de código que se escribe. En este artículo, exploraremos cómo

Leer más »
text
Javascript
Ego Cañari Torres

Introducción a la POO en JavaScript

¡Bienvenidos al maravilloso mundo de la Programación Orientada a Objetos (POO) en JavaScript! Si eres nuevo en la programación o simplemente quieres ampliar tus conocimientos, estás en el lugar correcto. La POO es un paradigma de programación que te permite

Leer más »
text
Desarrollo web
audra

DOM y Eventos con JavaScript

El fascinante mundo del DOM y los eventos en JavaScript Si eres un desarrollador web, es muy probable que hayas escuchado hablar del DOM y los eventos en JavaScript. Pero, ¿qué son realmente y por qué son tan importantes en

Leer más »
Programacion
Ego Cañari Torres

python matplotlib

python matplotlib es una biblioteca de visualización de datos en Python. Se utiliza para crear gráficos y diagramas en 2D y 3D, y se puede utilizar para representar una variedad de datos, como líneas, barras, histogramas, gráficos de dispersión, gráficos

Leer más »
Imagen de La Casa Matusita en Lima, Perú, un lugar misterioso con una rica historia de leyendas urbanas y fenómenos paranormales.
Historias de terror
audra

La escalofriante historia de La Casa Matusita en Perú

¡Bienvenidos, amigos, a una de las historias más escalofriantes de Perú! Hoy vamos a adentrarnos en los misterios y leyendas que rodean a la famosa Casa Matusita, un lugar que ha aterrorizado a los valientes que se han atrevido a

Leer más »

3 respuestas

  1. I loved even more than you will get done right here. The picture is nice, and your writing is stylish, but you seem to be rushing through it, and I think you should give it again soon. I’ll probably do that again and again if you protect this walk.

  2. Great article! I really appreciate the way you explained everything so clearly – it feels like you put a lot of effort into making it useful for readers. I’ve been exploring different tools and resources myself, It’s been a game changer for me, and reading your post actually gave me even more ideas on how to apply it. Thanks for sharing such valuable insights!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *