[英]Sort Javascript array of objects by greatest value
我有一个对象数组,其中 object 看起来像这样:
{
"id": "d630baff-0caf-4c9a-88a2-fc4c99fab2a4",
"created": "2021-01-24 20:27:28",
"last_updated": "2021-01-20 13:17:44"
}
我想根据created
或last_updated
中最大的值进行排序。 我可以通过查询ORDER BY GREATEST(created, last_updated) DESC
在 SQL 中执行此操作,但是如何在 Javascript 中实现此目的? 我试过做objs.sort((a, b) => (a.created > b.last_updated)? 1: -1)
但它不会导致正确的顺序。
您可以 select 更大的ISO 8601日期
const greatest = (a, b) => a >= b? a: b, object = { id: "d630baff-0caf-4c9a-88a2-fc4c99fab2a4", created: "2021-01-24 20:27:28", last_updated: "2021-01-20 13:17:44" } console.log(greatest(object.created, object.last_updated));
然后排序
array.sort((a, b) => greatest(a.created, a.last_updated)
.localeCompare(greatest(b.created, b.last_updated)
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.