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

242
Visualizações
¿Qué significa "array.length + 1" en JavaScript?

Sé cómo usar Javascript para bucles para recorrer matrices. Pero todavía no entiendo completamente qué está haciendo array.length + 1, específicamente la parte +1.

Cuando uso un bucle for, sé que es así

 for(let i = 0; i < array.length; i++){...}

Pero también estoy viendo esto.

 for(let i = 0; i < array.length + 1; i++){...}

Anteriormente pensé que array.length + 1 era lo mismo que dejar i = 1 pero mi código no funcionó al hacer eso, por ejemplo

 for(let i = 1; i < array.length; i++)

no es lo mismo que el bucle for anterior. ¿Alguien puede explicar por qué?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Este

 for(let i = 0; i < array.length; i++){...}

recorre desde los índices 0 hasta array.length - 1 . Por ejemplo, con una matriz con 3 elementos, itera sobre i s de 0, 1 y 2.

Este

 for(let i = 0; i < array.length + 1; i++){...}

es extraño. Recorre desde los índices 0 hasta array.length . Por ejemplo, con una matriz con 3 elementos, esto itera sobre i s de 0, 1, 2 y 3. Esto significa que si algo dentro del bucle hace referencia a la array[i] , ese valor no estará undefined en la iteración final.

La mayoría de las veces, ver algo así me haría pensar que alguien cometió un error tipográfico o lógico, aunque no me sorprendería ver algunos algoritmos que usaron algo así.

Este

 for(let i = 1; i < array.length; i++)

itera desde los índices 1 hasta array.length - 1 . Por ejemplo, con una matriz con 3 elementos, itera sobre i s de 1 y 2.

Habrá una iteración menos que elementos en la matriz. Esto significa que, si el cuerpo del bucle siempre hace referencia a array[i] y no a array[i - 1] , el primer elemento de la matriz siempre se omitirá.

Esto es mucho menos común que comenzar en 0, pero podría verse, especialmente cuando la lógica requiere comparar ciertos elementos adyacentes entre sí (por ejemplo, array[0] con array[1] y array[1] con array[2] , etc.).

about 4 years ago · Juan Pablo Isaza Relatório

0

Array.length + 1

en pocas palabras, es solo la cantidad de elementos en la matriz y agrega 1.

Una matriz con n elementos tiene una longitud de n, por lo que su ciclo se ejecutará n - i veces cuando use array.length . Si let i =0 , entonces su bucle se ejecutará n veces. Si i = 1 , entonces su ciclo se ejecutará n-1 veces si usa array.length . Entonces te faltará 1 iteración de tu ciclo.

Si necesita usar i=1 para comenzar sus iteraciones, debe usar array.length +1 para obtener el número equivalente de iteraciones.

 for(let i =0;i<array.length;i++){} // n iterations

es el mismo número de iteraciones que

 for(let i= 1;i<array.length +1;i++){} // n iterations
 for(let i=1;i<array.length;i++){} // n-1 iterations

siempre será 1 iteración menos.

Y recuerde, la indexación de matrices utiliza un contador 0-based , por lo que array[0] es el primer elemento de cada matriz.

about 4 years ago · Juan Pablo Isaza 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