0Pricing
JavaScript Academy · Lección

Escritura de funciones async; try/catch; paralelo frente a secuencial

Cree funciones async, espere resultados con await, capture errores y compare los patrones secuencial y paralelo.

Escritura de funciones async; try/catch; paralelo frente a secuencial es una lección gratuita de JavaScript Academy en CoddyKit. Esta es la lección 1 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de JavaScript Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de JavaScript Academy incluye 3 lecciones en total.

Introducción a async/await

Objetivo: Utilizar async/await de forma segura.

  • Crear funciones async
  • Esperar valores
  • Gestionar errores con try/catch
  • Ejecución en paralelo frente a secuencial
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 1

Ayudante pequeño basado en Promise

Cree un ayudante pequeño basado en Promise para probar await.

// delay returns a Promise that resolves after ms
function delay(ms, value) {
  return new Promise(function (resolve) {
    setTimeout(function () { resolve(value); }, ms);
  });
}

// Example usage
delay(10, "ok").then(function (v) {
  console.log("delay:", v);
});
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 2

Conceptos básicos de las funciones async

async marca una función que devuelve una Promise; dentro de ella puede utilizar await.

// An async function can use await inside
async function greet() {
  const name = await delay(5, "Ayla");
  console.log("Hello,", name);
}

// Call it
greet();
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 3

try/catch con await

Envuelva los await en try/catch cuando un paso pueda rechazarse.

// Simulate a failing task
function failAfter(ms, message) {
  return new Promise(function (resolve, reject) {
    setTimeout(function () { reject(new Error(message)); }, ms);
  });
}

async function runSafe() {
  try {
    const v = await failAfter(5, "boom");
    console.log("Value:", v);
  } catch (e) {
    console.log("Caught:", e.message);
  }
}

runSafe();
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 4

Patrón secuencial

Secuencial: cada await espera a que termine el anterior; los tiempos se suman.

// Sequential: total time ~ A + B
async function sequential() {
  const a = await delay(8, "A");
  const b = await delay(8, "B");
  console.log("seq:", a + b);
}

sequential();
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 5

Paralelismo con all

Paralelo: inicie primero las tareas y después use await Promise.all; el tiempo total es aproximadamente max(A, B).

// Parallel: start both, then await together
async function parallel() {
  const pa = delay(8, "A");
  const pb = delay(8, "B");
  const results = await Promise.all([pa, pb]);
  console.log("par:", results.join(""));
}

parallel();
Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 6

Cuestionario sobre ejecución paralela y secuencial

Comprobación rápida: ¿Qué patrón es más rápido para tareas independientes?

Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 7

Repaso

Repaso: Escribió funciones async, esperó valores, gestionó errores con try/catch y comparó los await secuenciales con el Promise.all paralelo, más rápido.

Escritura de funciones async; try/catch; paralelo frente a secuencial — ilustración 8

Preguntas frecuentes

¿La lección «Escritura de funciones async; try/catch; paralelo frente a secuencial» es gratis?

Sí — el texto completo de «Escritura de funciones async; try/catch; paralelo frente a secuencial» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de JavaScript Academy, actualiza a CoddyKit PRO. El curso de JavaScript Academy incluye 3 lecciones en total.

¿Qué aprenderé en «Escritura de funciones async; try/catch; paralelo frente a secuencial»?

Cree funciones async, espere resultados con await, capture errores y compare los patrones secuencial y paralelo. Practicas JavaScript Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar JavaScript Academy?

No se requiere experiencia previa. JavaScript Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 3.

¿Cuánto tiempo toma la lección «Escritura de funciones async; try/catch; paralelo frente a secuencial»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de JavaScript Academy?

Sí. Cada lección de JavaScript Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Escritura de funciones async; try/catch; paralelo frente a secuencial
  2. Timeouts y cancelación con AbortController
  3. Patrones de reintento y backoff
← Volver a JavaScript Academy