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

223
Views
Ordenar la matriz de objetos por nombre clave usando la biblioteca date-fns en javascript

Aquí matriz que contiene el nombre junto con la propiedad actualizada de TimeStamp . Quiero ordenar la matriz en función de la propiedad updatedTimeStamp.

Por lo tanto, estoy usando la biblioteca date-fns y solo quiero usar esta biblioteca, puedo prescindir de esta biblioteca, pero ese es mi requisito para usar esta biblioteca.

Puedo hacer una ordenación basada en el sello de tiempo actualizado, pero no devuelve el nombre. ¿Cómo puedo devolver la propiedad del nombre junto con el sello de tiempo actualizado?

 import { compareDesc } from "date-fns"; let arr = [ { name:"abc", updatedTimeStamp: "2021-12-06 14:09:00.304464" }, { name:"xyz", updatedTimeStamp: "2021-12-14 13:41:58.708262" }, { name:"thomas", updatedTimeStamp: "2021-12-06 15:39:09.365793" }, { name:"Robin", updatedTimeStamp: "2021-12-14 09:15:42.141081" }, { name:"Jobin", updatedTimeStamp: "2021-12-14 12:50:29.723421" }, { name:"Tobin", } ]; const objArr = arr.map(i => i.updatedTimeStamp).sort(compareDesc)

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Yo lo haría así en su lugar. Puede pasar su propia función que devuelve el comparsefunc en su lugar

 import { compareDesc } from "date-fns"; let arr = [{ name: "abc", updatedTimeStamp: "2021-12-06 14:09:00.304464" }, { name: "xyz", updatedTimeStamp: "2021-12-14 13:41:58.708262" }, { name: "thomas", updatedTimeStamp: "2021-12-06 15:39:09.365793" }, { name: "Robin", updatedTimeStamp: "2021-12-14 09:15:42.141081" }, { name: "Jobin", updatedTimeStamp: "2021-12-14 12:50:29.723421" } ]; // careful since this modifies the original array arr.sort((a, b) => compareDesc(a.updatedTimeStamp, b.updatedTimeStamp)) // to not mutate the original you can do this const objArr = [...arr].sort((a, b) => compareDesc(a.updatedTimeStamp, b.updatedTimeStamp))

about 4 years ago · Santiago Trujillo Report

0

Puedo prescindir de esta biblioteca, pero ese es mi requisito para usar esta biblioteca.

¿Por qué? El formato de fecha que tiene se puede ordenar con una ordenación incorporada normal

 let arr = [ { name:"abc", updatedTimeStamp: "2021-12-06 14:09:00.304464" }, { name:"xyz", updatedTimeStamp: "2021-12-14 13:41:58.708262" }, { name:"thomas", updatedTimeStamp: "2021-12-06 15:39:09.365793" }, { name:"Robin", updatedTimeStamp: "2021-12-14 09:15:42.141081" }, { name:"Jobin", updatedTimeStamp: "2021-12-14 12:50:29.723421" }, { name:"Tobin", } ]; const objArr = arr.slice(0).sort((a,b) => { if (a.updatedTimeStamp > b.updatedTimeStamp) return 1 if (a.updatedTimeStamp < b.updatedTimeStamp) return -1 return 0 }) console.log(objArr)

about 4 years ago · Santiago Trujillo 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!