Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

88
Visualizações
por qué el ciclo infinito no se aplica cuando se itera hacia atrás con for loop

Estoy aprendiendo javascript y tengo dos preguntas, espero que me puedan ayudar :)
Tengo dos bucles for iterando hacia atrás

  • primer ejemplo:
 for (var i = 10; i--;) {
 console.log(i, "backward");
}
// starts at 9 and stops at 0
// without breaking condition
  • segundo ejemplo:
 for (var i = 10; i >= 0; i--) {
 console.log(i, "backward");
}
// starts at 10 and stops at 0
// with breaking condition that i >= 0
  1. ¿Por qué en el primer ejemplo no necesitamos establecer un punto de ruptura para el ciclo? como i > 0 ? ¿Es porque 0 es falso de todos modos? Entonces, cuando llega a 0, ¿se rompe automáticamente? y no seguirá iterando como 0, -1, -2, -3, ... etc.?
  2. ¿Por qué en el segundo ejemplo la iteración comienza en 10 mientras que en el primer ejemplo comienza en 9?

gracias por su apoyo :D Saludos

almost 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

  1. i-- es el punto de ruptura. Una expresión post-decremento resta 1 de la variable y devuelve el valor anterior. Entonces, cuando i es 0 , el valor de i-- es 0 , lo cual es falso, y el ciclo se detiene.
  2. Porque en el primer ejemplo estamos decrementando i durante la condición de repetición, que se ejecuta antes que el cuerpo, por lo que la primera iteración ya lo ha decrementado a 9 . En el segundo ejemplo, disminuimos i en la expresión de actualización, que se ejecuta después del cuerpo, por lo que todavía tiene el valor inicial 10 durante el cuerpo de la primera iteración.

Para comprender lo que hace un bucle for , amplíelo en el bucle while análogo.

 for(initialize; condition; update) {
 body
}

es aproximadamente equivalente a

 initialize;
while (condition) {
 body;
 update;
}
almost 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda