当前位置: 首页 > 知识库问答 >
问题:

JavaScript对象按日期排序[重复]

潘慈
2023-03-14

我试图排序我的对象数组,这些对象具有按日期最新的第一个和最新的最后一个日期值。

我有以下代码:

function comp(a, b) {
  return new Date(a.jsDate) - new Date(b.jsDate);
}

function compNewestFirst(a, b) {
  return new Date(b.jsDate) - new Date(a.jsDate);
}

请注意,JS Date是新Date()接受的有效日期/格式。

我可以先订购最旧的,但不能先订购最新的,我尝试了以下方法:

return new Date(b.jsDate) + new Date(a.jsDate);

当前我不能先按最新日期排序,它只能先按最早的日期排序。

谢啦

共有1个答案

蒋奕
2023-03-14

试试看:

function compNewestFirst(a, b) {
  return new Date(b.jsDate).getTime() - new Date(a.jsDate).getTime();
}

返回值为负整数,您可以订购。

这是一把小提琴;

 类似资料:
  • 举个例子 那么,如何按日期对该数组进行排序? 这只是一个小例子,但它就像数组中的1000个对象。我在互联网上搜索并找到了一些使用函数的示例,但它在我的大数组中不起作用。

  • 我想按日期对对象数组进行排序,但问题是它们的日期是这种格式-。 这里是此数组中一个对象的示例 我必须按修改日期或创建日期对它们进行排序!

  • 问题内容: 我发现的每个示例都是按字母顺序进行的,而我需要按日期对元素进行排序。 我的ArrayList包含其数据成员之一是DateTime对象的对象。在DateTime上,我可以调用以下函数: 因此,我可以做一些比较: 我应该在if块内做什么? 问题答案: 你可以使对象具有可比性: 然后通过调用以下命令对其进行排序: 但是,有时你不想更改模型,例如想要对几个不同的属性进行排序时。在这种情况下,你

  • 问题内容: 我有一个包含一个称为的对象的数组,它具有诸如“日期”,“名称”等属性。 我正在对数组进行排序,如下所示: 应该将日期从新到旧排序。例如: 2016年6月30日 2016年6月29日 等等.. 但是,当我的数组包含“ 2016年7月2日”时,排序后的数组将变为: 2016年6月30日 2016年6月29日 2016年7月2日 排序后,“ 2016年7月2日”应该位于顶部,而现在位于底部?

  • 假设我有一个由几个对象组成的数组: 我如何按日期元素对这个数组进行排序,从最接近当前日期的日期开始,然后按时间向下排序?请记住,数组可能有许多对象,但为了简单起见,我使用了2。 我会使用排序函数和自定义比较器吗?

  • 问题内容: 假设我有一些对象的数组: 如何从最接近当前日期和时间的日期开始按date元素对该数组进行排序?请记住,数组可能有许多对象,但是为了简单起见,我使用了2。 我会使用排序功能和自定义比较器吗? 更新: 在我的特定情况下,我希望将日期从最近到最早安排。最后,我不得不逆转简单函数的逻辑: 这会将最新日期排序。 问题答案: 最简单的答案 更通用的答案 或更简洁: 通用,有力的答案 在所有数组上使