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

103
Views
Empujando una matriz a otra matriz

Soy nuevo en javascript y he estado haciendo algunos ejercicios, pero no puedo entender por qué este código funciona así,

 let newArray = []; let arr1 = []; for (let i = 0; i < 2; i++) { for (let j = 0; j < 2; j++) { arr1.push(0); //console.log('Arr1:',arr1); } newArray.push(arr1); //console.log('New Array:', newArray) } console.log(newArray);

Según yo, este bloque de código debería generar [[0,0][0,0,0,0]] pero el resultado real es [[0,0,0,0][0,0,0,0] ].

Intenté iniciar sesión en la consola después de cada iteración (eliminando los comentarios) y parece que no puedo encontrar dónde sale mal. Parece que todo va bien hasta el último registro. Agradecería tu ayuda.

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

0

Una forma de hacerlo es evitar usar la función push() y usar la función concat() en su lugar. Más sobre esto en la discusión existente.

Tendrías algo como:

 newArray = newArray.concat(arr)
about 4 years ago · Juan Pablo Isaza Report

0

Debe utilizar la sintaxis Array#slice o spread para copiar la matriz en lugar de presionar la misma referencia varias veces, ya que los cambios posteriores seguirán reflejándose.

 let newArray = []; let arr1 = []; for (let i = 0; i < 2; i++) { for (let j = 0; j < 2; j++) { arr1.push(0); } newArray.push(arr1.slice()); } console.log(JSON.stringify(newArray));

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!