Constructores de objetos en JavaScript
A menudo necesitas crear muchos objetos del mismo tipo. JavaScript te ofrece varias formas de hacerlo.
Funciones constructoras
Un constructor es una función especial para construir y configurar objetos. Utiliza la palabra clave new para llamarlo. Comienza siempre el nombre de la función con una letra mayúscula. Esto te ayuda a distinguirla de las funciones regulares.
Si olvidas la palabra clave new, la función funcionará como una función estándar y no logrará crear un objeto adecuado.
Valores por defecto
Puedes establecer valores por defecto en tu constructor. Esto garantiza que tus objetos siempre tengan datos válidos, incluso si falta algún argumento.
Ejemplo:
function Person(name = "Unknown", age = 0) {
this.name = name;
this.age = age;
}
Prototipos y memoria
Añadir métodos a un prototipo es más inteligente que añadirlos directamente a un constructor. Cuando utilizas el prototipo, todas las instancias comparten un único método. Esto ahorra memoria porque la computadora no recrea el método para cada nuevo objeto.
Object.create()
Este método crea un nuevo objeto utilizando un objeto existente como su prototipo. Establece la herencia sin necesidad de un constructor. El nuevo objeto puede acceder a las propiedades del objeto original.
Herencia de clases
El JavaScript moderno utiliza clases para manejar la herencia. Puedes crear una clase hija que extienda a una clase padre. Utiliza la palabra clave super() para pasar datos de la clase hija a la clase padre. Esto permite que la clase hija utilice las propiedades de la clase padre mientras añade sus propias características únicas.
¿Por qué usar constructores?
- Código reutilizable: Crea muchos objetos similares rápidamente.
- Encapsulación: Mantén la lógica de configuración del objeto en un solo lugar.
- Inicialización fácil: Establece valores específicos durante la creación.
- Herencia: Construye objetos complejos a partir de otros más simples.
- Código limpio: Mantén tu lógica organizada y fácil de leer.
Source: https://www.geeksforgeeks.org/javascript/js-constructor-method/ Source: https://www.w3schools.com/js/js_object_constructors.asp Full post: https://dev.to/kamalesh_ar_6252544786997/object-constructors-in-javascript-2e96
Comunidad de aprendizaje opcional: https://t.me/GyaanSetuAi