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

152
Views
No se puede sobrescribir la matriz de javascript

Quiero realizar un seguimiento de los cambios de "resultados". Si la longitud de los resultados aumenta, la matriz se sobrescribirá y se guardará. Si la longitud disminuye, la matriz se sobrescribirá, pero el nuevo valor no se guardará.

 playlists = []; results = simpleMysqlQuery(); setinterval{ update(playlists, results); } function update(playlists, results){ if(playlists.length != results.length){ playlists = reWritePlaylists(results, playlists); } } function reWritePlaylists(results, playlists){ results.forEach(function(item, i, arr){ playlists[i] = new Object(); playlists[i]['id'] = results[i]['id']; playlists[i]['name'] = results[i]['name']; }); if(playlists.length > results.length){ playlists = playlists.slice(0, results.length); } return playlists; }
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Cuando usa el slice y crea una nueva matriz, la matriz recién creada ya no es una referencia a la matriz original, por lo que el parámetro de playlists de reproducción en la update ya no se refiere a la misma instancia de matriz que la variable de playlists de reproducción fuera de la función. Prueba esto:

 playlists = []; results = simpleMysqlQuery(); setinterval{ playlists = update(playlists, results); } function update(playlists, results){ if(playlists.length != results.length){ playlists = reWritePlaylists(results, playlists); } return playlists } function reWritePlaylists(results, playlists){ results.forEach(function(item, i, arr){ playlists[i] = new Object(); playlists[i]['id'] = results[i]['id']; playlists[i]['name'] = results[i]['name']; }); if(playlists.length > results.length){ playlists = playlists.slice(0, results.length); } return playlists; }
about 4 years ago · Juan Pablo Isaza Report

0

Actualice la función reWritePlaylists como se muestra a continuación:

 function reWritePlaylists(results, playlists){ playlists.splice(0, results.length); results.forEach(function(item, i, arr){ playlists[i] = new Object(); playlists[i]['id'] = results[i]['id']; playlists[i]['name'] = results[i]['name']; }); return playlists; }

about 4 years ago · Juan Pablo Isaza Report

0

¡Encontré el wae!

 function reWritePlaylists(results, playlists){ playlists.splice(0, playlists.length); results.forEach(function(item, i, arr){ playlists[i] = new Object(); playlists[i]['id'] = results[i]['id']; playlists[i]['name'] = results[i]['name']; }); return playlists; }
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!