28% de descuento del curso en SQL Server

Estrada Web Group Estrada Web Group
Curso gratuito JS
Estrada Web Group
Estrada Web Group
Estrada Web Group Estrada Web Group
Calificar:
19 marzo JavaScri..

Curso gratuito de JavaScript

El objetivo de este curso es poder aprender JavaScript de forma sencilla viendo un concepto teórico, luego algunos ejemplos resueltos y por último y lo más importante, efectuar una serie de ejemplos tu solo. Este curso es complementario al curso gratuito de HTML5 y el curso de CSS3

¿Qué es JavaScript?

JavaScript es un lenguaje interpretado, multiplataforma y orientado a objetos el cual se basa en el estándar ECMAScript.

Un lenguaje interpretado significa que las instrucciones las analiza y procesa el navegador en el momento que deben ser ejecutadas.

Dentro de este curso de JavaScript vamos a hacer ejemplos básicos del lenguaje, ejemplos que trabajan con el DOM de las páginas web o ejemplos que hagan uso de alguna librería como Modernizr, Raphael, jQuery, entre otras

Para empezar a probar el lenguaje JavaScript puedes abrir la Consola JavaScript de tu navegador y empezar a escribir código.

console.log("Mi Primer Código JavaScript del Curso de Programación Gratis");

Ejemplo

Vamos a crear un programa que muestre en una página web el mensaje “Hola Mundo estoy aprendiendo a programar en Estrada Web Group”.

<!DOCTYPE html>
<html>
<head>
  <title>Ejemplo de JavaScript</title>
  <meta charset="UTF-8">
</head>
<body>
<script>
  document.write(' Hola Mundo estoy aprendiendo a programar en Estrada Web Group ');
</script>
</body>
</html>

En el ejemplo anterior podemos ver que con document.write se escribe en el documento HTML y el código JavaScript debe ir encerrado en las etiquetas <script></script>.

JavaScript es sensible a mayúsculas y minúsculas, por lo que hay que tener cuidado como escribimos nuestro código, pero no te preocupes esto es solo el inicio y poco a poco te iras familiarizando con el tema.

Sección 1. Primeros pasos

Sección 2. Fundamentos

  • Sintaxis: detalles de la sintaxis de JavaScript, incluidos espacios en blanco, declaraciones, identificadores, palabras clave, expresiones y comentarios.
  • Variables: muestra cómo declarar variables.
  • Tipos de datos: te presentamos los tipos de datos de JavaScript, incluidos los tipos primitivos y de referencia.
  • Número: aprenderás cómo JavaScript usa el tipo Número para representar los números enteros y de coma flotante.
  • Separador numérico: te muestra cómo hacer que los números sean más legibles usando guiones bajos como separadores numéricos.
  • Literales octales y binarios: brinda soporte para literales binarios y cambia la forma de representar los literales octales.
  • Booleano: te presentamos el tipo boolean.
  • String: aprenderás sobre el tipo primitivo de cadenas de texto (string) y algunas operaciones básicas de un string.
  • Objeto: te presenta el tipo de objeto.
  • Valores primitivos frente a valores de referencia: aprenderás dos tipos de valores en JavaScript, incluidos los valores primitivos y de referencia, y las diferencias entre ellos.
  • Array: te presenta el tipo Array y cómo manipular los elementos de la matriz.
  • Uso del Strict Mode: Explicar cómo el modo estricto ("use strict") cambia la manera en que JavaScript maneja algunos errores y restricciones, y por qué es una buena práctica usarlo.
  • Null y Undefined: Diferenciar entre estos dos valores, cuándo se usan y cómo JavaScript los maneja.
  • Símbolos: Introducir el tipo de dato Symbol y su utilidad para crear propiedades únicas de objetos.
  • BigInt: Explicar el tipo de dato BigInt para números más grandes que los que puede representar el tipo Number.
  • Template Literals: Mostrar cómo usar los literales de plantilla para la creación de strings, incluyendo la interpolación de variables y expresiones.
  • Conversión de Tipos (Type Coercion): Explicar cómo JavaScript convierte automáticamente tipos de datos en ciertos contextos y cómo puede afectar a las operaciones.
  • Scope (Ámbito): Describir el ámbito de las variables, incluyendo ámbito global, local, y de bloque.
  • Hoisting: Detallar cómo las declaraciones de variables y funciones son movidas al inicio de su contexto de ejecución.
  • Clausuras (Closures): Explicar qué son las clausuras y cómo permiten acceder al ámbito de una función exterior desde una función interior.
  • Funciones Inmediatamente Invocadas (IIFE): Describir cómo y por qué usar IIFEs para preservar el ámbito privado.
  • Manejo de errores con Try-Catch: Explicar cómo usar try-catch para manejar errores de ejecución.
  • El Event Loop y la Concurrency Model: Describir cómo JavaScript maneja operaciones asíncronas con su modelo de concurrencia y el event loop.
  • Operadores de Spread y Rest: Explicar cómo usar los operadores ... para propagar o agrupar elementos.
  • Destructuración: Mostrar cómo la destructuración facilita extraer elementos de arrays y propiedades de objetos
  • Comparaciones: Explicar en detalle la diferencia entre la comparación con doble igual (==) y triple igual (===).
  • Tipado Dinámico: Hablar sobre cómo el tipado dinámico en JavaScript afecta la asignación y manipulación de variables.
  • ECMAScript 6+ Features: Presentar características introducidas en ES6 y versiones posteriores, como las palabras clave let y const, y cómo han impactado en la escritura de código JavaScript.
  • Estructuras de Datos Avanzadas: Introducir estructuras como Map, Set, WeakMap, y WeakSet.
  • Funciones como Objetos de Primera Clase: Discutir cómo en JavaScript, las funciones son tratadas como objetos y qué implica esto en la práctica.
  • Patrones de Diseño Comunes: Introducir patrones de diseño simples como módulo, revelador, y singleton

Sección 3. Operadores

Sección 4. Declaraciones de flujo de control

  • if: te muestra cómo usar la declaración if para ejecutar un bloque si una condición es verdadera.
  • if…else: aprende a ejecutar un bloque de código en función de una condición específica.
  • if…else…if – verifica múltiples condiciones y ejecuta un bloque.
  • Operadores ternarios: te muestran cómo hacer un atajo para la instrucción if (? :).
  • switch: te muestra cómo reemplazar múltiples sentencias if al comparar un valor con múltiples variantes usando la sentencia switch.
  • while: aprende cómo realizar un bucle de prueba previa que ejecuta repetidamente un bloque de código siempre que una condición específica sea verdadera.
  • do...while: muestra cómo realizar un ciclo posterior a la prueba que ejecuta un bloque de código repetidamente hasta que una condición específica es falsa.
  • bucle for: aprende a ejecutar repetidamente un bloque de código en función de varias opciones.
  • bucle for...in: aprende a iterar sobre las propiedades de un objeto utilizando el bucle for...in.
  • break: aprende a terminar prematuramente un bucle.
  • continue: te muestra cómo omitir la iteración actual de un ciclo y saltar a la siguiente.
  • Operador de coma: te guía sobre cómo usar el operador de coma en un bucle for para actualizar varias variables a la vez.

Sección 5. Funciones en JavaScript

Sección 6. Objetos y Prototipos (Objects & Prototypes)

Sección 7. Clases

  • Clases en JavaScript: Introducción a la programación orientada a objetos en JavaScript
  • Sintaxis de clases: Cómo declarar y utilizar una clase en JavaScript
  • Constructores de clase: Cómo crear y utilizar constructores en JavaScript
  • Getters y setters: Cómo definir y utilizar getters y setters en una clase en JavaScript
  • Métodos en una clase: Cómo definir y utilizar métodos en una clase en JavaScript
  • Propiedades de instancia y de clase: Cómo definir y utilizar propiedades en una clase en JavaScript
  • Herencia: Cómo crear y utilizar la herencia en una clase en JavaScript
  • Clases abstractas: Cómo crear y utilizar clases abstractas en JavaScript
  • Polimorfismo: Cómo utilizar el polimorfismo en una clase en JavaScript
  • Encapsulación: Cómo utilizar la encapsulación en una clase en JavaScript
  • Composición: Cómo utilizar la composición en una clase en JavaScript
  • Interfaces: Cómo definir e implementar interfaces en JavaScript
  • Métodos estáticos: Cómo definir y utilizar métodos estáticos en una clase en JavaScript
  • Propiedades estáticas: Cómo definir y utilizar propiedades estáticas en una clase en JavaScript
  • Métodos privados: Cómo definir y utilizar métodos privados en una clase en JavaScript
  • Campos privados: Cómo definir y utilizar campos privados en una clase en JavaScript
  • Mixins: Cómo utilizar mixins para compartir funcionalidad entre clases en JavaScript
  • Expresiones de clase: Cómo utilizar expresiones de clase para definir clases en JavaScript
  • Propiedades calculadas: Cómo utilizar propiedades calculadas en una clase en JavaScript
  • new.target: Cómo utilizar la metapropiedad new.target en una clase en JavaScript

Sección 8. Funciones avanzadas

  • Funciones generadoras y la asincronía perfecta: Adéntrate en el mundo de las funciones generadoras y cómo simplifican el manejo de operaciones asíncronas, creando un código más limpio y mantenible.
  • Dominando Async/Await en JavaScript: Profundiza en las funciones asíncronas y el uso de await para manejar promesas, haciendo que el código asíncrono sea más legible y eficiente.
  • Funciones de Orden Superior en Acción: Explora el poder de las funciones que usan o generan otras funciones, mejorando la modularidad y siguiendo los principios de la programación funcional.
  • Currying en JavaScript: Escribe Código Más Preciso: Descubre cómo las técnicas de currying pueden ayudarte a escribir funciones más flexibles y precisas, permitiendo un código más reutilizable.
  • Fábricas de Funciones: Modularidad y Reutilización: Aprende a crear funciones dinámicas en tiempo de ejecución, lo que te permite escribir código más modular y reutilizable.
  • Memorización en funciones: Rendimiento Superior: Optimiza tus funciones mediante la memorización, almacenando resultados de operaciones pesadas para aumentar significativamente el rendimiento de tu aplicación.
  • Throttling y debouncing: Eficiencia en Eventos: Controla mejor los eventos y las llamadas a funciones en tu aplicación web mediante técnicas de throttling y debouncing, mejorando la respuesta y eficiencia de la aplicación.
  • Manejando excepciones con gracia en JavaScript: Crea aplicaciones robustas aprendiendo a capturar y manejar excepciones en tus funciones, proporcionando una mejor experiencia de usuario incluso en casos de error.
  • El Poder de la Recursividad en Funciones: Entiende cómo y cuándo usar funciones recursivas, esenciales para trabajar con estructuras de datos profundas y algoritmos complejos.
  • Patrones de Diseño Funcional en JavaScript: Mejora la estructura de tu código y facilita la mantenibilidad mediante la implementación de patrones de diseño funcional reconocidos.
  • Funciones puras en JavaScript: Predicción y Consistencia: Profundiza en el concepto de funciones puras para escribir código más predecible, testeable y consistente en tus proyectos.
  • El Uso Avanzado de Closures en JavaScript: Descubre patrones avanzados y técnicas para usar closures, encapsulando información y creando funciones privadas.
  • Programación Reactiva en JavaScript con RxJS: Introduce conceptos de programación reactiva utilizando funciones y observables, transformando la manera de manejar eventos y flujos de datos.
  • Aplicando Inyección de Dependencias en Funciones de JavaScript: Aprende a hacer que tu código sea más modular y testeable mediante la inyección de dependencias en tus funciones.
  • Patrón de Módulos en JavaScript: Estructura y Claridad: Utiliza el patrón de módulos para organizar y encapsular código en tus aplicaciones, aumentando la legibilidad y mantenibilidad.
  • Pruebas Unitarias en Funciones JavaScript: Garantizando Calidad: Establece prácticas sólidas de testing, escribiendo pruebas unitarias para tus funciones y asegurando que cada parte de tu código funcione como se espera.
  • Partial Application en JavaScript: Flexibilidad en la Invocación: Explora la aplicación parcial de funciones para escribir código más flexible y limpio, permitiendo una mayor reutilización y claridad.
  • Iteradores y Generadores: Controlando la Iteración Paso a Paso: Domina los iteradores y generadores en JavaScript para manejar secuencias de datos con precisión, controlando el flujo de datos en tus aplicaciones.
  • Manejo avanzado de promesas con funciones asíncronas: Adéntrate en patrones avanzados para manejar promesas, mejorando el manejo de tareas asíncronas y la legibilidad del código.
  • Proxy en JavaScript: Interceptar y Extender Funciones: Aprende a utilizar proxies para modificar o extender el comportamiento de tus funciones, añadiendo lógica adicional, validación, y mucho más.

Compartir:

Cargando...
Descarga el código fuente

Obten el código del sistema de gestión de proyectos.

Shape