Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

200
Vistas
Ralentización de cada iteración de la manipulación de Loop Dom

Tengo algunos problemas para ralentizar el bucle de un bucle for y while en javascript.

 const insertion_sort = function (array) { for (i = 1; i < array.length; i++) { let key_item = array[i]; let j = i - 1; while (j >= 0 && array[j] > key_item) { array[j + 1] = array[j]; j--; //change HTML through dom manipulation; } array[j + 1] = key_item; } return array; };

El código está arriba. Tengo una función que cambia el dom que realmente funciona cuando lo pongo en mi función. Solo muestra el resultado final que se alinea con lo que quiero. Sin embargo, el problema es que los bucles se ejecutan muy rápido y no pueden mostrar la manipulación de dom en cada iteración del bucle. Lo que creo que debería hacer es reducir la velocidad del bucle, pero la función de tiempo de espera establecido no parece funcionar. Por lo que puedo decir, las promesas tampoco funcionan, ya que es asíncrono, por lo que no estoy exactamente seguro de cómo ralentizaría el ciclo para que un usuario pueda ver cada iteración de la manipulación de dom. Cualquier ayuda sería muy apreciada. O tal vez mi comprensión de la función de tiempo de espera y las promesas no es correcta. ¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Probaste algo como esto:

 const val = document.getElementById('test') const array = [500, 1000, 2000, 3000, 4000] function someAPICall(time) { return new Promise((resolve, reject) => { setTimeout(() => { resolve("Resolved") }, time); }) } array.forEach(async(i) => { const res = await someAPICall(i); val.innerHTML = i })
 <div id="test">0</div>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda