Sim

Loop

El bloque Loop es un contenedor que ejecuta bloques repetidamente. Itera sobre colecciones, repite operaciones un número fijo de veces o continúa mientras se cumpla una condición.

Los bloques Loop son nodos contenedores que albergan otros bloques dentro de ellos. Los bloques contenidos se ejecutan múltiples veces según tu configuración.

Opciones de configuración

Tipo de bucle

Elige entre cuatro tipos de bucles:

Bucle For (Iteraciones) - Un bucle numérico que se ejecuta un número fijo de veces:

Bucle For con iteraciones

Úsalo cuando necesites repetir una operación un número específico de veces.

Example: Run 5 times
- Iteration 1
- Iteration 2
- Iteration 3
- Iteration 4
- Iteration 5

Bucle ForEach (Colección) - Un bucle basado en colecciones que itera sobre cada elemento en un array u objeto:

Bucle ForEach con colección

Úsalo cuando necesites procesar una colección de elementos.

Example: Process ["apple", "banana", "orange"]
- Iteration 1: Process "apple"
- Iteration 2: Process "banana"
- Iteration 3: Process "orange"

Bucle While (Basado en condición) - Continúa ejecutándose mientras una condición se evalúe como verdadera:

Bucle While con condición

Úsalo cuando necesites repetir hasta que se cumpla una condición específica. La condición se verifica antes de cada iteración.

Example: While {"<variable.i>"} < 10
- Check condition → Execute if true
- Inside loop: Increment {"<variable.i>"}
- Inside loop: Variables assigns i = {"<variable.i>"} + 1
- Check condition → Execute if true
- Check condition → Exit if false

Bucle Do-While (Basado en condición) - Se ejecuta al menos una vez, luego continúa mientras una condición sea verdadera:

Bucle Do-While con condición

Úsalo cuando necesites ejecutar al menos una vez, luego repetir hasta que se cumpla una condición. La condición se verifica después de cada iteración.

Example: Do-while {"<variable.i>"} < 10
- Execute blocks
- Inside loop: Increment {"<variable.i>"}
- Inside loop: Variables assigns i = {"<variable.i>"} + 1
- Check condition → Continue if true
- Check condition → Exit if false

Cómo usar bucles

Creando un bucle

  1. Arrastra un bloque de Bucle desde la barra de herramientas a tu lienzo
  2. Configura el tipo de bucle y los parámetros
  3. Arrastra otros bloques dentro del contenedor del bucle
  4. Conecta los bloques según sea necesario

Accediendo a los resultados

Después de que un bucle se completa, puedes acceder a los resultados agregados:

  • loop.results: Array de resultados de todas las iteraciones del bucle

Ejemplos de casos de uso

Procesamiento de resultados de API - Bucle ForEach procesa registros de clientes desde una API

// Procesar cada cliente en la respuesta de la API
forEach(response.customers, (customer) => {
  // Verificar estado de la cuenta
  if (customer.status === 'active') {
    // Enviar correo electrónico de bienvenida
    sendEmail(customer.email, 'Bienvenido a nuestro servicio');
  }
});

Generación iterativa de contenido - Bucle For genera múltiples variaciones de contenido

// Generar 3 variaciones de contenido
for (let i = 0; i < 3; i++) {
  // Crear variación con diferentes tonos
  const variation = generateContent({
    topic: 'beneficios del producto',
    tone: ['profesional', 'casual', 'entusiasta'][i]
  });
  // Guardar variación
  variations.push(variation);
}

Contador con bucle While - Bucle While procesa elementos con contador

// Procesar elementos mientras haya disponibles
let count = 0;
while (count < items.length) {
  // Procesar elemento actual
  processItem(items[count]);
  // Incrementar contador
  count++;
}

Características avanzadas

Limitaciones

Los bloques contenedores (Bucles y Paralelos) no pueden anidarse unos dentro de otros. Esto significa:

  • No puedes colocar un bloque de Bucle dentro de otro bloque de Bucle
  • No puedes colocar un bloque Paralelo dentro de un bloque de Bucle
  • No puedes colocar ningún bloque contenedor dentro de otro bloque contenedor

Si necesitas iteración multidimensional, considera reestructurar tu flujo de trabajo para usar bucles secuenciales o procesar datos por etapas.

Los bucles se ejecutan secuencialmente, no en paralelo. Si necesitas ejecución concurrente, usa el bloque Paralelo en su lugar.

Entradas y salidas

  • Tipo de bucle: Elige entre 'for', 'forEach', 'while', o 'doWhile'

  • Iteraciones: Número de veces a ejecutar (bucles for)

  • Colección: Array u objeto sobre el que iterar (bucles forEach)

  • Condición: Expresión booleana a evaluar (bucles while/do-while)

  • loop.currentItem: Elemento actual siendo procesado

  • loop.index: Número de iteración actual (base 0)

  • loop.items: Colección completa (bucles forEach)

  • loop.results: Array de todos los resultados de iteración

  • Estructura: Los resultados mantienen el orden de iteración

  • Acceso: Disponible en bloques después del bucle

Mejores prácticas

  • Establece límites razonables: Mantén el número de iteraciones en un nivel razonable para evitar tiempos de ejecución prolongados
  • Usa ForEach para colecciones: Cuando proceses arrays u objetos, utiliza bucles ForEach en lugar de bucles For
  • Maneja los errores con elegancia: Considera añadir manejo de errores dentro de los bucles para flujos de trabajo robustos
On this page

On this page

Start building today
Trusted by over 60,000 builders.
Build Agentic workflows visually on a drag-and-drop canvas or with natural language.
Get started