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

232
Vistas
¿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 Respuestas
Responde la pregunta

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 Denunciar

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 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