- 1

Fundamentos de JavaScript para Principiantes
02:49 - 2

Instalación y Configuración de JavaScript en Visual Studio Code
04:10 - 3

Instalación y configuración de Visual Studio Code y Node.js en Windows
05:11 - 4

Variables y Buenas Prácticas en JavaScript
09:23 - 5

Tipos de Datos en JavaScript: Primitivos y Complejos
07:59 - 6

Manipulación de Strings en JavaScript: Escritura, Concatenación y Substrings
07:08 - 7

Números y Operaciones Matemáticas en JavaScript
09:30 - 8

Conversión de Tipos en JavaScript: Implícita y Explícita
04:33 - 9

Conversión de Tipos en JavaScript: Explícita e Implícita
12:20
Función constructora y gestión de instancias en JavaScript
Clase 37 de 55 • Curso de Fundamentos de JavaScript
Contenido del curso
- 10

Operadores de Comparación en JavaScript: Igualdad y Desigualdad
06:12 - 11

Operadores Lógicos en Programación: AND, OR y NOT
04:33 - 12

Estructuras Condicionales: Uso de IF, ELSE y ELSE IF en JavaScript
07:45 - 13

Juego de Adivinanza: Programación con Estructuras Condicionales
09:36 - 14

Estructura y uso del condicional Switch en programación
12:10 - 15

Ciclo For: Iteración de Listas y Uso de Console.log en JavaScript
07:31 - 16

Iteración con for-of en JavaScript para arrays y strings
04:26 - 17

Iteración sobre Objetos con forIn en JavaScript
07:38 - 18

Uso del ciclo while para iteración en programación
03:56 - 19

Ciclos doWhile: Estructura y Diferencias con While
03:13
- 20

Funciones en JavaScript: Cómo Calcular Precios con Descuentos
11:39 - 21

Diferencias entre Funciones y Métodos en JavaScript
10:01 - 22

Funciones Puras e Impuras en Programación: Conceptos y Ejemplos
11:22 - 23

Arrow Functions y Enlace Léxico en JavaScript
10:31 - 24

Scope y Contextos de Ejecución en JavaScript
12:21 - 25

Closures y Ámbito Léxico en JavaScript
08:00 - 26

Fundamentos del Desarrollo Web: Frontend y Backend
02:11
- 27

Arrays: Propiedades, Acceso y Creación en Programación
09:09 - 28

Mutabilidad e inmutabilidad en arrays: conceptos y ejemplos prácticos
07:56 - 29

Métodos push y pop para modificar arrays en JavaScript
04:33 - 30

Métodos map y forEach en JavaScript: Uso y Ejemplos Prácticos
12:53 - 31

Métodos Filter y Reduce en JavaScript: Uso y Ejemplos Prácticos
11:34 - 32

Métodos find y findIndex en JavaScript: Uso y ejemplos prácticos
03:52 - 33

Uso del método slice para extraer porciones de un array en JavaScript
05:28 - 34

Uso del Spread Operator en JavaScript: Copia, Combinación y Más
07:11
- 35

Programación Orientada a Objetos en JavaScript: Conceptos y Práctica
06:48 - 36

Creación y Manipulación de Objetos en JavaScript
09:05 - 37

Función constructora y gestión de instancias en JavaScript
11:36 - 38

Clases en JavaScript: Creación y Uso de Objetos con Sintaxis Moderna
06:17 - 39

Programación Orientada a Objetos en JavaScript: Clases y Prototipos
02:16 - 40

Prototipos y Herencia en JavaScript: Construcción y Uso Práctico
15:38 - 41

Métodos y herencia prototípica en JavaScript
10:43 - 42

Uso de "this" en Clases y Funciones Constructoras
05:36 - 43

Validación de Usuarios en una Red Social: Algoritmo Básico
12:26 - 44

Implementación de la Función Sign-In y Validación de Usuario
09:00
- 45

Programación Síncrona y Asíncrona en JavaScript
04:37 - 46

Promesas en JavaScript: Asincronía y Manejo de Estados
11:36 - 47

Uso de Async/Await para Promesas Asíncronas en JavaScript
09:51 - 48

Peticiones asíncronas con for await en JavaScript
06:19 - 49

Fundamentos de HTTP: Cliente-Servidor y Métodos de Petición
03:12 - 50

Peticiones HTTP en Frontend: Uso de Fetch y Análisis en Network
07:02 - 51

Peticiones HTTP en JavaScript: Fetch, GET, POST y DELETE
14:26 - 52

Envío de Datos al Servidor con JavaScript y Fetch API
10:40 - 53

Eliminar Posts con JavaScript y Delegación de Eventos
10:15 - 54

Manejo de IDs en JavaScript para eliminar artículos del DOM
02:23 - 55

Actualizaciones y Nuevas Funciones en JavaScript
01:48
¿Cómo podemos crear múltiples objetos en JavaScript de manera eficiente?
Cuando trabajamos con objetos en JavaScript, es común encontrarnos con la necesidad de crear múltiples instancias del mismo tipo de objeto, como podría ser una persona. En vez de copiar y pegar el mismo código repetidamente y modificarlo, podemos optar por un enfoque más eficiente y escalable utilizando funciones constructoras. Estas nos permiten definir una plantilla para un objeto, facilitando la creación de múltiples instancias.
¿Qué son las funciones constructoras y cómo se utilizan?
Una función constructora es una forma de crear múltiples objetos con estructura similar sin necesidad de duplicar código. La función constructora tiene ciertas peculiaridades:
- Nombre en mayúscula: Iniciamos el nombre de la función constructora con una letra mayúscula para indicar que esta función se utilizará para crear objetos.
- Estructura como una función regular: Aunque tiene nombre específico, la estructura es similar a una función regular, pasando los datos necesarios como parámetros.
Veamos un ejemplo básico para construir un objeto "Persona":
function Persona(nombre, apellido, edad) {
this.nombre = nombre;
this.apellido = apellido;
this.edad = edad;
}
Crear instancias con new
Para crear instancias de un objeto utilizando una función constructora, utilizamos la palabra clave new:
const persona1 = new Persona('Juan', 'Pérez', 30);
const persona2 = new Persona('Diego', 'De Granda', 35);
Cada persona aquí es una instancia separada del objeto "Persona" con sus propios datos.
¿Cómo se pueden añadir propiedades o métodos adicionales?
Es posible que después de definir una función constructora, necesitemos añadir propiedades o métodos adicionales. Podemos hacerlo directamente en una instancia particular o utilizar el prototipo para afectar a todas las instancias.
Agregar propiedades individuales
Para añadir una propiedad a una instancia particular sin afectar a las demás, simplemente accedemos al objeto y añadimos la nueva propiedad:
persona1.nacionalidad = 'Mexicano';
Utilizar Prototype
Si deseamos agregar una propiedad o método a todas las instancias, lo hacemos a través del prototype:
Persona.prototype.telefono = '555-555-5555';
Persona.prototype.saludar = function() {
console.log(`Hola, me llamo ${this.nombre} ${this.apellido}`);
};
El método saludar ahora estará disponible para todas las instancias de Persona:
persona1.saludar(); // "Hola, me llamo Juan Pérez"
persona2.saludar(); // "Hola, me llamo Diego De Granda"
¿Por qué usar funciones constructoras y el prototipo?
- Eficiencia: Las funciones constructoras evitan la repetición de código y permiten una construcción más rápida y limpia cuando se necesitan múltiples instancias.
- Específicas: Al modificar el
prototype, podemos añadir funcionalidades o propiedades que se apliquen globalmente a todas las instancias, manteniendo el código DRY (Don't Repeat Yourself). - Flexibilidad: Podemos tanto modificar instancias específicas como influir sobre todas a través del prototipo, ofreciendo un gran margen de personalización y manejo eficiente de las propiedades.
Este uso de funciones constructoras y prototipos es una práctica común en JavaScript, especialmente al manejar la creación de objetos dinámicos y masivos. Ahora que conoces estos fundamentos, te animo a seguir explorando y desarrollando tus habilidades con JavaScript. ¡La práctica constante es la clave para dominar cualquier tecnología!