Curso completo

JavaScript Completo: de cero a testing

Domina JavaScript desde sus fundamentos y entornos de ejecución hasta APIs, arquitectura, herramientas modernas y testing profesional.

ModalidadVirtual Duración126 horas NivelPrincipiante Al finalizarCertificado incluido

Próximo acceso: Acceso inmediato · 21 módulos · modalidad virtual

Sobre el curso

JavaScript de cero a testing

Aprende el lenguaje de forma progresiva y aplicada: fundamentos, navegador, Node.js, DOM, asincronía, APIs, arquitectura, herramientas y pruebas.

Incluye

  • 21 módulos y 128 clases publicadas
  • 21 videos de apoyo seleccionados y verificados
  • 21 guías PDF completas y descargables
  • 23 evaluaciones con 147 preguntas
  • 22 tareas aplicadas, incluido el proyecto Mesa de Ayuda TI
  • Certificado digital automático al finalizar

Metodología

En cada módulo estudias seis clases jerárquicas, ejecutas código seguro, revisas el video, descargas la guía, completas la práctica y apruebas la evaluación. El parcial, el examen final y el proyecto integrador consolidan toda la ruta.

Requisitos

No necesitas experiencia previa. Requieres una computadora con navegador moderno, Node.js, un editor de código y constancia para practicar.

ZT
Docente o mentorEquipo académico Zetrum Perú

Contenido académico

Temario del curso

126 horas · Virtual

Temario jerárquico

Módulo 1 - Introducción a JavaScript y Entornos de Ejecución

  1. 1.1. Historia y Evolución del Lenguaje
  2. 1.1.1. Estándares ECMAScript (ES6 en adelante)
  3. 1.1.1.1. Motores de ejecución (V8, SpiderMonkey) y compilación JIT (Just-In-Time)
  4. 1.2. Entornos de Desarrollo
  5. 1.2.1. JavaScript en el Navegador vs. Servidor
  6. 1.2.1.1. Configuración de la consola, herramientas de desarrollador y Node.js básico

Módulo 2 - Sintaxis, Variables y Tipos de Datos

  1. 2.1. Declaración de Variables
  2. 2.1.1. Diferencias entre var, let y const
  3. 2.1.1.1. Ámbito de bloque (block scope) y zona muerta temporal (TDZ)
  4. 2.2. Tipos de Datos
  5. 2.2.1. Primitivos vs. Referencia
  6. 2.2.1.1. Mutabilidad, inmutabilidad y paso por valor vs. paso por referencia

Módulo 3 - Operadores y Expresiones

  1. 3.1. Operadores Matemáticos y de Comparación
  2. 3.1.1. Igualdad estricta vs. abstracta
  3. 3.1.1.1. Coerción de tipos implícita y explícita (== vs ===)
  4. 3.2. Operadores Lógicos y de Cortocircuito
  5. 3.2.1. Evaluación lógica (&&, ||, !)
  6. 3.2.1.1. Operador Nullish Coalescing (??) y encadenamiento opcional (?.)

Módulo 4 - Estructuras de Control de Flujo

  1. 4.1. Condicionales
  2. 4.1.1. Estructuras if...else y switch
  3. 4.1.1.1. Optimización de condicionales y uso del operador ternario avanzado
  4. 4.2. Bucles e Iteraciones
  5. 4.2.1. Ciclos tradicionales (for, while, do...while)
  6. 4.2.1.1. Iteradores modernos: for...of (iterables) y for...in (enumerables)

Módulo 5 - Funciones en JavaScript

  1. 5.1. Declaración y Expresión de Funciones
  2. 5.1.1. Funciones tradicionales y parámetros
  3. 5.1.1.1. Parámetros por defecto y el objeto arguments
  4. 5.2. Arrow Functions (Funciones Flecha)
  5. 5.2.1. Sintaxis concisa y retorno implícito
  6. 5.2.1.1. Comportamiento léxico del contexto this en las funciones flecha

Módulo 6 - Estructuras de Datos: Arrays (Arreglos)

  1. 6.1. Creación y Manipulación Básica
  2. 6.1.1. Métodos de adición y eliminación
  3. 6.1.1.1. Uso de push(), pop(), shift(), unshift() y splice()
  4. 6.2. Iteración y Programación Funcional en Arrays
  5. 6.2.1. Métodos de orden superior
  6. 6.2.1.1. Transformación y filtrado con map(), filter(), reduce() y find()

Módulo 7 - Estructuras de Datos: Objetos Literales

  1. 7.1. Propiedades y Métodos
  2. 7.1.1. Acceso mediante punto y corchetes
  3. 7.1.1.1. Creación de propiedades dinámicas y métodos computados
  4. 7.2. Desestructuración y Operador Spread
  5. 7.2.1. Extracción de datos de objetos y arreglos
  6. 7.2.1.1. Clonación superficial (shallow copy) vs. clonación profunda (deep copy) usando rest/spread

Módulo 8 - Estructuras de Datos Avanzadas

  1. 8.1. Colecciones Clave-Valor
  2. 8.1.1. El objeto Map
  3. 8.1.1.1. Diferencias de rendimiento y tipos de claves entre Object y Map
  4. 8.2. Colecciones de Valores Únicos
  5. 8.2.1. El objeto Set
  6. 8.2.1.1. Eliminación de duplicados en arrays y operaciones de conjuntos (intersección/unión)

Módulo 9 - Manipulación del DOM (Document Object Model)

  1. 9.1. Selección de Nodos
  2. 9.1.1. Métodos de consulta
  3. 9.1.1.1. Diferencias entre querySelector, getElementById y HTMLCollections vs NodeLists
  4. 9.2. Modificación del Árbol DOM
  5. 9.2.1. Creación, inserción y eliminación de elementos
  6. 9.2.1.1. Manipulación segura de clases (classList), atributos y propiedades de estilo

Módulo 10 - Eventos e Interacción en el Navegador

  1. 10.1. Manejo de Eventos
  2. 10.1.1. El método addEventListener
  3. 10.1.1.1. El objeto Event, preventDefault() y stopPropagation()
  4. 10.2. Propagación de Eventos
  5. 10.2.1. Fase de captura y burbujeo (Bubbling)
  6. 10.2.1.1. Implementación del patrón de Delegación de Eventos para optimización de memoria
  7. 10.7. Examen parcial de JavaScript (Módulos 1-10)

Módulo 11 - Asincronía Parte 1: El Event Loop y Promesas

  1. 11.1. Arquitectura Asíncrona
  2. 11.1.1. Modelo de concurrencia de JavaScript
  3. 11.1.1.1. Call Stack, Web APIs, Task Queue y Microtask Queue
  4. 11.2. Promesas
  5. 11.2.1. Creación y consumo de Promesas
  6. 11.2.1.1. Encadenamiento de métodos .then(), .catch() y .finally()

Módulo 12 - Asincronía Parte 2: Async / Await

  1. 12.1. Sintaxis Asíncrona Moderna
  2. 12.1.1. Transformación de Promesas a código secuencial
  3. 12.1.1.1. Manejo de errores con bloques try...catch en funciones asíncronas
  4. 12.2. Concurrencia de Promesas
  5. 12.2.1. Ejecución en paralelo
  6. 12.2.1.1. Uso avanzado de Promise.all(), Promise.race(), y Promise.allSettled()

Módulo 13 - Consumo de APIs y Peticiones HTTP

  1. 13.1. La API Fetch
  2. 13.1.1. Realización de peticiones GET y POST
  3. 13.1.1.1. Configuración de cabeceras (Headers), cuerpos (Body) y credenciales
  4. 13.2. Formato JSON
  5. 13.2.1. Serialización y Deserialización
  6. 13.2.1.1. Uso de JSON.parse() y JSON.stringify() en la transmisión de datos

Módulo 14 - Programación Orientada a Objetos (POO)

  1. 14.1. Prototipos
  2. 14.1.1. La cadena de prototipos (Prototype Chain)
  3. 14.1.1.1. Herencia prototípica y el método Object.create()
  4. 14.2. Clases (ES6)
  5. 14.2.1. Sintaxis de Clases y Constructores
  6. 14.2.1.1. Implementación de herencia (extends), métodos estáticos y propiedades privadas (#)

Módulo 15 - Conceptos Avanzados y Contexto de Ejecución

  1. 15.1. Scope y Closures (Clausuras)
  2. 15.1.1. Ámbito léxico
  3. 15.1.1.1. Aplicación de Closures para emulación de variables privadas y funciones fábrica
  4. 15.2. El contexto this y Hoisting
  5. 15.2.1. Determinación dinámica de this
  6. 15.2.1.1. Enlazado explícito de contexto mediante .bind(), .call() y .apply()

Módulo 16 - Módulos y Arquitectura de Código

  1. 16.1. Sistema de Módulos
  2. 16.1.1. ES Modules vs. CommonJS
  3. 16.1.1.1. Exportaciones nombradas vs. por defecto (import / export)
  4. 16.2. Patrones de Diseño Básicos
  5. 16.2.1. Estructuración del código
  6. 16.2.1.1. Implementación del Patrón Módulo (Module Pattern) y Singleton

Módulo 17 - Almacenamiento en el Navegador y APIs Web

  1. 17.1. Web Storage API
  2. 17.1.1. localStorage y sessionStorage
  3. 17.1.1.1. Límites de almacenamiento y persistencia de estados de la aplicación
  4. 17.2. Cookies
  5. 17.2.1. Gestión de sesiones
  6. 17.2.1.1. Creación, lectura, expiración y banderas de seguridad (HttpOnly, Secure)

Módulo 18 - Manejo de Errores y Depuración

  1. 18.1. Excepciones
  2. 18.1.1. Lanzamiento de errores
  3. 18.1.1.1. Uso de la declaración throw y creación de instancias Error personalizadas
  4. 18.2. Herramientas de Debugging
  5. 18.2.1. Técnicas de rastreo
  6. 18.2.1.1. Uso estratégico de debugger, breakpoints, de-ofuscación y monitoreo de red en DevTools

Módulo 19 - Expresiones Regulares (RegEx) y Manipulación de Cadenas

  1. 19.1. Definición de Patrones
  2. 19.1.1. Sintaxis literal y constructores de RegEx
  3. 19.1.1.1. Cuantificadores, clases de caracteres, anclas y banderas (flags g, i, m)
  4. 19.2. Validación de Datos
  5. 19.2.1. Métodos de prueba
  6. 19.2.1.1. Uso de .test(), .match(), y .replace() para sanitización de formularios

Módulo 20 - Ecosistema, Herramientas y Control de Versiones

  1. 20.1. Gestores de Paquetes
  2. 20.1.1. Node Package Manager (NPM)
  3. 20.1.1.1. Configuración del package.json, dependencias vs dependencias de desarrollo
  4. 20.2. Bundlers y Transpiladores
  5. 20.2.1. Preparación de código para producción
  6. 20.2.1.1. Integración básica de Vite o Webpack y transpilación con Babel

Módulo 21 - Introducción al Testing en JavaScript

  1. 21.1. Pruebas Unitarias
  2. 21.1.1. Conceptos de TDD (Test-Driven Development)
  3. 21.1.1.1. Estructura de pruebas (Arrange, Act, Assert) usando frameworks como Jest
  4. 21.2. Mocks y Spies
  5. 21.2.1. Aislamiento de código
  6. 21.2.1.1. Simulación de respuestas de APIs y verificación de llamadas a funciones (mock functions)
  7. 21.7. Examen final de JavaScript (Módulos 11-21)

Empieza tu próxima habilidad

Aprende con una ruta clara y práctica

Completa tu matrícula y recibe acceso al aula después de validar el pago.

Inscribirme al curso