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

84
Vistas
Confusión en bucles

Si pongo 'let tableValue' fuera de un ciclo while , muestra el mismo número 10 veces y cuando lo escribo dentro del ciclo while , imprime una tabla del valor 'n'.

¿Cuál es la diferencia entre estas dos cosas?

 function table(n) { let i = 1; let tableValue = (n * i); while (i <= 10) { console.log(tableValue); i++; } } table(9);

 function table(n) { let i = 1; while (i <= 10) { let tableValue = (n * i); console.log(tableValue); i++; } } table(9);

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

0

Si pones esta línea:

 let tableValue = (n * i);

fuera de su ciclo, como lo hizo en el primer ejemplo, luego tableValue se establece una vez, antes de que comience el ciclo, y cuando lo registra, está registrando el mismo valor cada vez, porque nunca lo cambia después de eso.

Esta declaración no es una declaración de que tableValue siempre es n * i en todo momento, incluso cuando n e i cambian. Si desea eso, debe volver a calcular tableValue cada vez que cambie cualquiera de los valores. Eso es lo que estás logrando al poner esa línea dentro de tu bucle.

Las computadoras ejecutan el código una línea a la vez y no miran mucho hacia adelante o hacia atrás. Cuando el código cambia el estado de su programa, como establecer un valor de variable, ese cambio persiste hasta que se vuelve a cambiar más tarde.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Usar:

 function table(n) { let i = 1; let tableValue = (n * i); // This is 1 * 9, because it is outside the while loop ( the while loop block } don't worry that it's inside the function, it still needs to be in the while block. I think that's why you're getting confused. while (i <= 10) { console.log(tableValue); i++; } } table(9);

He puesto comentarios en la línea en la que creo que necesita explicación.

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