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

219
Views
¿Cómo agrupar objetos y eliminar duplicados?

Tengo un requisito donde tengo datos similares a este:

 [ { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "A", "classCode": "EX003", "publishedTime": "2022-02-13 18:04:34.356251+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "E10003", "active": "A", "classCode": "EX002", "publishedTime": "2022-02-21 03:34:10.139843+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "A", "classCode": "EX003", "publishedTime": "2022-02-23 12:43:00.08635+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "T", "classCode": "EX004", "publishedTime": "2022-02-24 12:00:00.08635+00" } } ]

Necesito eliminar los duplicados para cada positionCode . Por ejemplo, si hay varios objetos con el mismo código de positionCode , necesito retener solo el último en la matriz y eliminar todos los demás duplicados de la matriz y recuperar la matriz en el mismo formato con los duplicados eliminados.

Sugiera una forma de hacer esto en Javascript.

Pensé en agrupar los objetos usando el código de positionCode y luego verificar cuál es el último. No estoy seguro de cómo proceder y agradecería ayuda en esto.

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

0

Puede lograr esto filtrando los códigos de posición en función de un solo elemento y comparar su tiempo publicado si el elemento actual publicado es mayor que el elemento que ya está en nuestra matriz (arr) o el elemento que es único para ellos. Luego empujará a una matriz temporal, de lo contrario no.

 let arr =[ { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "A", "classCode": "EX003", "publishedTime": "2022-02-13 18:04:34.356251+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "E10003", "active": "A", "classCode": "EX002", "publishedTime": "2022-02-21 03:34:10.139843+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "A", "classCode": "EX003", "publishedTime": "2022-02-23 12:43:00.08635+00" } }, { "header": { "httpFittingRequestAttempts": 1 }, "payload": { "positionCode": "A10007", "active": "T", "classCode": "EX004", "publishedTime": "2022-02-24 12:00:00.08635+00" } } ] let a=[] arr.forEach((item,index)=>{ let i=arr.filter(e=>e.payload.positionCode===item.payload.positionCode && new Date(e.payload.publishedTime)>new Date(item.payload.publishedTime)); if(!i.length) a.push(item); }); console.log(a) // here is your final result array

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!