Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

122
Views
Problema con elementos vacíos en matriz 2d

Estoy tratando de construir una matriz 2d con JS.

En un teatro hay 26 líneas, cada una incluye 100 asientos:

 function theaterSeats() { let seats= new Array(26); for (let i = 1; i <= 26; i++){ seats[i] = new Array(100); for (let j = 1; j <= 100; j++) { seats[i][j] = `${i}-${j}` } } return seats; } console.log(theaterSeats());

El resultado no está lejos de lo que esperaba, excepto que hay un elemento vacío en cada matriz... No entiendo por qué. ¿Alguna ayuda por favor?

 [ <1 empty item>, [ <1 empty item>, '1-1', '1-2', '1-3', '1-4', '1-5', '1-6', '1-7', '1-8', '1-9', '1-10', '1-11'

(..................)

Gracias de antemano por su respuesta ;).

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

El índice de matrices de JavaScript comienza desde 0, es por eso que su primer elemento siempre está vacío porque omitió el índice 0 y comenzó su iteración desde el índice 1. ¡Debe llenar su matriz comenzando desde el índice 0!

La versión correcta de su código podría ser:

 function theaterSeats() { let seats= new Array(26); for (let i = 0; i < 26; i++){ seats[i] = new Array(100); for (let j = 0; j < 100; j++) { seats[i][j] = `${i + 1}-${j + 1}` } } return seats; }

about 4 years ago · Juan Pablo Isaza Report

0

Solución de mapa simple

 const theaterSeats = [...Array(26)].map((_, i) => { return [...Array(100)].map((_, j) => `${i+1}-${j+1}`) }) console.log(theaterSeats)

about 4 years ago · Juan Pablo Isaza Report

0

Es solo porque está usando 1 como el primer índice en lugar de 0, el índice de matriz comienza en 0, algo así como:

Una matriz de 7 elementos tiene esos índices: 0,1,2,3,4,5,6. Entonces, cuando establezca un valor en una posición, comenzará así: matriz [0] = 'algún valor', matriz [1] = 'algún otro valor' ...

Aquí, en su ciclo for, deberá comenzar con i y j = 0. Entonces se verá como

 function theaterSeats() { let seats= new Array(26); for (let i = 0; i <= 26; i++){ seats[i] = new Array(100); for (let j = 0; j <= 100; j++) { seats[i][j] = `${i+1}-${j+1}` } } return seats; } console.log(theaterSeats());
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!