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

144
Views
El valor de la matriz cambia con el valor del objeto

Cuando coloco un objeto en una matriz usando el método push y luego cambio el valor del objeto, el valor del objeto en la matriz también cambia. ¿Cómo prevenirlo?

 function onLoad() { let array = [] let object = {} object[1] = [1,2] array.push(object) object[1] = [1,3] console.log(array) } onLoad();

Me gustaría la consola de código [{1,2}] pero consolará [{1,3}].

¿Alguien sabría cómo arreglar esto?

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

0

En JavaScript, los tipos de datos complejos (objetos y matrices) se copian por referencia, mientras que los tipos de datos primitivos (cadenas, números y booleanos) se copian por valor.

En pocas palabras, pasar por referencia no creará una copia, sino que se referirá a la misma memoria. Entonces, los objetos y matrices originales se cambiarán.

Copiar por valor creará una copia del valor y, por lo tanto, el valor original no se cambiará

 function change(array1){ array1[0] = "changed"; } var original = ["original"] change(original) console.log(original) function changePrimitive(input) { input = "changed" } var original = "original" changePrimitive(original) console.log(original);

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!