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

225
Vistas
Javascript imprime valor en bucle aunque la impresión está fuera del bucle

Esta pregunta se hizo antes: problemas para entender lo que sucede durante javascript for loop, pero el autor de la pregunta no obtuvo la respuesta correcta y yo también. Aprendí C ++ y Python antes, así que me familiaricé con loop, pero cuando practico este código:

 let text = ""; let i; for(i=0; i<5; i++) {text += "The number is " + i + " ";} document.write(text);

el resultado es totalmente diferente a lo que esperaba. Visité W3schools pero no encuentro la respuesta https://www.w3schools.com/js/js_loop_for.asp

https://www.w3schools.com/js/tryit.asp?filename=tryjs_loop_for_om3

Esperaba que el resultado fuera "" porque el texto no se puede cambiar, pero el código se imprime: "El número es 0 El número es 1 El número es 2 El número es 3 El número es 4". Mi pregunta es por qué la impresión se ejecuta en el ciclo aunque la impresión está fuera del ciclo. ¡Muchos gracias!

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

0

La impresión se ejecuta como espera: solo una vez al final. En el ciclo, cada vez que se agrega una parte adicional al text . Eso es:

 [iteration 0] "" [iteration 1] "The number is 0 " [iteration 2] "The number is 0 The number is 1" [iteration 3] "The number is 0 The number is 1 The number is 2" etc.

Luego, al final, imprime la Cadena final, que es la concatenación de todas las Cadenas parciales que 'pegó' juntas.

Decir x += y es lo mismo que decir x = x + y . Las variables estándar (var y let) aún son mutables, por lo que si las inicializa como una cadena vacía, aún puede agregarlas o reemplazarlas más tarde.

Intente convertir text en una const en su lugar, y debería haber un TypeError en tiempo de ejecución porque intenta reasignar una constante.

about 4 years ago · Juan Pablo Isaza Denunciar

0

por qué la salida no es una cadena vacía porque la variable de texto ya no está vacía después del bucle for. ha asignado una cadena cuando se repite para que la variable de texto ya no esté vacía

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