Contenido del curso
Primeros Pasos
- 5

¡Hola Mundo!
06:13 min - 6

Anatomía de una variable
09:23 min - 7

Tipos de datos: Mutabilidad e inmutabilidad
10:55 min - 8

Paso por valor
11:06 min - 9

Paso por referencia
07:00 min - 10

Creación de strings
11:33 min - 11

Concatenación de strings
08:31 min - 12

Manipulación de strings
12:13 min - 13

Tipo de dato primitivo: number
09:30 min - 14

Conversión a Booleanos
05:08 min - 15

Tipos de datos primitivos: null, undefined, symbol y bigint
07:28 min - 16

Conversión de tipos: Type Casting y Coercion
04:38 min - 17

Conversión de tipos explícita e implícita
12:20 min - 18

Proyecto: Crea un perfil para redes sociales con JavaScript
07:23 min
Funciones y This
- 19

Anatomía de una función
11:39 min - 20

Preguntas a Desarrolladores Senior: ¿Por qué aprender Desarrollo Web?
02:11 min - 21

Funciones vs Métodos
10:01 min - 22

Funciones puras e impuras
11:22 min - 23

Identificador this
11:38 min - 24

Métodos bind, call y apply
10:09 min - 25

Funciones flecha y enlace léxico
10:31 min - 26

Implicaciones de duplicar código
03:19 min - 27

Funciones constructoras
10:41 min - 28

10 Tipos de funciones
01:39 min - 29

Objeto window y modo estricto
07:37 min - 30

Tipos de binding
01:11 min - 31

Expresiones vs Sentencias
04:02 min - 32

Proyecto: Crea biografías de personajes con JavaScript
12:51 min
Lógica y ciclos
- 33

Operadores de comparación
06:12 min - 34

Operadores lógicos
04:33 min - 35

Ejecución condicional: if
07:45 min - 36

Proyecto: Adivina el número
09:36 min - 37

Ejecución condicional: ternario
05:24 min - 38

Ejecución condicional: switch
12:08 min - 39

Loop: for
07:31 min - 40

Loop: forEach
03:57 min - 41

Loop: for of
04:26 min - 42

Loop: for in
07:38 min - 43

Loop: while
03:56 min - 44

Loop: do while
03:13 min - 45

Proyecto: Juego adivina la palabra
15:56 min
Fundamentos de arrays y modificación
- 46

Introducción a Arrays
09:09 min - 47

Mutabilidad e inmutabiliad de Arrays
07:56 min - 48

Modificación básica del final con push(), pop()
04:33 min - 49

Ejercicio: Stack de libros
16:03 min - 50

Modificación del principio con shift(), unshift()
10:21 min - 51

Modificación avanzada con splice(), reverse(), sort(), fill()
16:37 min - 52

Proyecto: Juego de cartas
15:37 min - 53

Preguntas a Desarrolladores Senior: Estrategias y métodos de estudio
01:10 min
Iteración de Arrays
- 54

Iteración con map() y forEach()
12:53 min - 55

Filtrado y reducción con filter() y reduce()
11:34 min - 56

Ejercicio: Calificación promedio aprobatoria
05:27 min - 57

Búsqueda de elementos con find() y findIndex()
03:52 min - 58

Ejercicio: Encuentra al ganador de una rifa
11:21 min - 59

Proyecto: Análisis de transacciones
10:55 min - 60

Proyecto: Análisis de transacciones parte 2
08:01 min
Métodos específicos y Operaciones
- 61

Unir y entrelazar con concat(), spread operator y join()
12:05 min - 62

Verificación y evaluación con every() y some()
05:15 min - 63

Métodos de búsqueda con includes(), indexOf() y lastIndexOf()
07:05 min - 64

Ejercicio: Encontrando los índices
11:09 min - 65

Crear copias con slice()
05:28 min - 66

Spread operator: casos de uso
07:11 min
Arrays multidimencionales
Clases y Objetos
- 71

Anatomia de un Objeto
06:48 min - 72

Trabajando con objetos
12:52 min - 73

Función constructora
14:31 min - 74

¿Qué es una clase?
Viendo ahora - 75

Prototipos y herencias
02:15 min - 76

Herencia en la práctica
15:38 min - 77

Prototipos en la práctica
10:42 min - 78

this en JavaScript
05:36 min - 79

Proyecto: Crea una red social
12:25 min - 80

Proyecto: Crea una red social parte 2
09:00 min
¿Qué es una clase?
Resumen
¿Cómo se define una clase en JavaScript?
En 2015, JavaScript introdujo una nueva forma de definir clases, una alternativa visualmente más próxima a lenguajes orientados a objetos como Java. Este nuevo enfoque es conocido como un "Sugar Syntax", que simplifica la creación de objetos al proporcionar una estructura que actúa como un "Blueprint" o molde para construir objetos.
Para definir una clase, se utiliza la palabra reservada class seguida del nombre de la clase, que debe empezar con mayúscula, y luego se abren llaves {} para definir su contenido.
class Persona { constructor(nombre, edad) { this.nombre = nombre; this.edad = edad; } }
¿Qué es un constructor y cómo se utiliza?
El constructor es un método especial que se utiliza para inicializar objetos creados a partir de una clase. Este método define cómo se configuran las propiedades del objeto al recibir argumentos durante su instanciación.
Por ejemplo, en la definición de la clase Persona, el constructor toma los argumentos nombre y edad para inicializar las propiedades del objeto:
constructor(nombre, edad) { this.nombre = nombre; this.edad = edad; }
¿Cómo se añaden métodos a una clase?
Además de las propiedades, las clases en JavaScript también pueden incluir métodos, que son funciones que actúan directamente sobre los objetos que se cree con esa clase. Los métodos se definen dentro de la clase y pueden acceder a las propiedades del objeto utilizando this.
class Persona { constructor(nombre, edad) { this.nombre = nombre; this.edad = edad; } saludar() { console.log(`Hola, mi nombre es ${this.nombre} y tengo ${this.edad} años.`); } }
¿Cómo se crean instancias de una clase?
Para crear instancias de una clase, se utiliza la palabra clave new seguida del nombre de la clase y se pasan los argumentos requeridos por el constructor. Esto permite crear múltiples objetos con diferentes configuraciones de propiedades basados en el mismo molde.
const persona1 = new Persona("Mariana", 25); persona1.saludar(); // Imprime: "Hola, mi nombre es Mariana y tengo 25 años."
La creación de instancias es esencial en programación orientada a objetos, ya que permite utilizar las clases como plantillas para generar objetos personalizados. Con la sintaxis moderna de clases, JavaScript se alinea más con los paradigmas clásicos de la programación orientada a objetos, promoviendo la reutilización y organización del código. ¡Continúa explorando estas herramientas para llevar tus habilidades al siguiente nivel!