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?
06:17 min - 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
Viendo ahora - 79

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

Proyecto: Crea una red social parte 2
09:00 min
this en JavaScript
Resumen
Comprender la palabra reservada this es fundamental para trabajar con clases, funciones constructoras e instancias en JavaScript. Su función principal es dar referencia al objeto que se está construyendo, permitiendo que las propiedades y métodos se conecten correctamente con cada instancia creada.
¿Qué significa this dentro de una clase?
This es una palabra reservada que apunta al objeto mismo que se está construyendo a partir de una clase. Cuando definimos una clase, estamos creando un molde del cual se generarán múltiples instancias, es decir, objetos individuales con sus propios valores. Dentro de ese molde, this permite que cada instancia reciba y almacene los datos que le corresponden [0:30].
Sin this, no habría forma de vincular los valores que se pasan al constructor con las propiedades del objeto resultante. Es el puente entre los parámetros que recibe el constructor y las propiedades que tendrá el objeto final.
¿Cómo se usa this en el constructor de una clase?
Veamos un ejemplo práctico. Se crea una clase Persona con un método constructor que recibe nombre y edad [1:05]:
javascript class Persona { constructor(nombre, edad) { this.nombre = nombre; this.edad = edad; } }
this.nombre = nombresignifica: la propiedadnombrede este objeto será igual al valor que se pase como argumento.this.edad = edadfunciona de la misma manera para la edad.
El constructor es un método especial dentro de la clase que se ejecuta automáticamente cada vez que se crea una nueva instancia con la palabra reservada new.
¿Cómo se crea una instancia a partir de la clase?
Para generar un objeto concreto a partir del molde, se utiliza new seguido del nombre de la clase y los valores correspondientes [1:40]:
javascript const persona1 = new Persona("Alice", 25); console.log(persona1);
Al ejecutar esto, el resultado es un objeto con las propiedades nombre: "Alice" y edad: 25. La palabra new toma los valores proporcionados, los inyecta como parámetros del constructor y this se encarga de asignarlos al objeto que se está creando.
¿Cómo funciona this dentro de un método de instancia?
Si necesitamos agregar un método particular a una instancia específica, this sigue cumpliendo la misma función: hacer referencia al objeto actual [2:40].
javascript
persona1.nuevoMetodo = function() {
console.log(Mi nombre es ${this.nombre});
};
persona1.nuevoMetodo();
El resultado es "Mi nombre es Alice", porque this.nombre dentro del método apunta a la propiedad nombre de persona1, que ya tiene el valor "Alice" asignado desde el constructor [3:10].
¿Por qué es tan importante entender this?
La referencia que establece this es lo que permite que cada instancia sea independiente. Si creamos persona2 con otros valores, this dentro de esa instancia apuntará a sus propias propiedades, no a las de persona1.
- This siempre hace referencia al objeto en el que se está ejecutando el código.
- Dentro del constructor, this representa la instancia que se está creando en ese momento.
- Dentro de un método, this apunta al objeto que invoca dicho método.
El concepto de instancia se refiere a cada objeto individual que se genera a partir de una clase. La clase actúa como un molde y cada instancia es una copia con valores propios. Por su parte, el operador new es el mecanismo que activa el constructor y produce esa nueva instancia.
Dominar this es esencial para construir aplicaciones con programación orientada a objetos en JavaScript. Si tienes dudas sobre cómo se comporta en diferentes contextos, comparte tu experiencia en los comentarios.