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

228
Views
Cómo eliminar un elemento de matriz de una matriz de objetos JSON por ID

Esto es probablemente bastante fácil, pero me da problemas. Dada esta estructura JSON:

 "playlists" : [ { "id" : "1", "owner_id" : "2", "song_ids" : [ "8", "32" ] }, { "id" : "2", "owner_id" : "3", "song_ids" : [ "6", "8", "11" ] }, { "id" : "3", "owner_id" : "7", "song_ids" : [ "7", "12", "13", "16", "2" ] } ]

¿Cómo eliminaría un objeto de la matriz por clave/valor? En este caso por DNI? lista de reproducción. empalme (1,1)? lista de reproducción.eliminar (id)? No estoy seguro de cómo hacer esto con elegancia. Digamos que deseo eliminar el elemento con ID = 3, cómo obtener este resultado:

 "playlists" : [ { "id" : "1", "owner_id" : "2", "song_ids" : [ "8", "32" ] }, { "id" : "2", "owner_id" : "3", "song_ids" : [ "6", "8", "11" ] } ]
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Usando Array.filter , puede filtrar elementos que no coincidan con una determinada condición. Por ejemplo:

 const result = playlists.filter(playlist => playlist.id !== '2');

Aquí hay una demostración de trabajo:

 /* Example Data */ const playlists = [ { "id" : "1", "owner_id" : "2", "song_ids" : [ "8", "32"] }, { "id" : "2", "owner_id" : "3", "song_ids" : ["6", "8","11" ] } ]; /* Takes a list of playlists, and an ID to remove */ const removePlaylistById = (plists, id) => plists.filter(playlist => playlist.id !== id); /* Removes playlist ID 2 from list, prints result */ const result = removePlaylistById(playlists, '2'); console.log(result);


Otra opción sería usar Array.findIndex para obtener el índice de un elemento con la ID dada, luego usar Array.splice para eliminar ese elemento. Esto modificará la matriz, sin necesidad de una copia.

Por ejemplo:

 const indexToRemove = playlists.findIndex((pl) => pl.id === '2'); playlists.splice(indexToRemove, 1);
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!