过滤然后按日期对对象数组进行排序

Qr1ea1

我正在尝试通过将json与当前日期进行比较来按其开始日期和结束日期过滤json。我想按其开始日期对过滤后的json进行排序。到目前为止,这是我所做的

dateNow = new Date();
filteredJson = ufjson.filter((item, index) => item.start_date <= dateNow && item.end_date <= dateNow);

但是,过滤器不起作用。我没有结果。

这是我的示例json

ufjson = [
  {
    amount: '50',
    discount: '0',
    start_date: '2021-01-01T18:24:18.790+08:00',
    end_date: '2020-01-29T18:24:18.790+08:00',
  },
  {
    amount: '100',
    discount: '10',
    start_date: '2021-01-05T18:24:18.790+08:00',
    end_date: '2020-01-25T18:24:18.790+08:00',
  },
 ]
阿里Esmailpor

您所做的是比较两个字符串。您首先必须将它们更改为Number。你可以这样做:

var ufjson = [
  {
    amount: "50",
    discount: "0",
    start_date: "2021-01-01T18:24:18.790+08:00",
    end_date: "2020-01-29T18:24:18.790+08:00",
  },
  {
    amount: "100",
    discount: "10",
    start_date: "2021-01-21T18:24:18.790+08:00",
    end_date: "2020-01-25T18:24:18.790+08:00",
  },
];

var dateNow = new Date();
var filteredJson = ufjson.filter(
  (item, index) =>
    new Date(item.start_date).getTime() <= dateNow.getTime() &&
    new Date(item.end_date).getTime() <= dateNow.getTime()
);

console.log("item:", filteredJson);

我刚刚更改了第二个约会开始时间。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Javascript-按日期然后按时间对对象数组进行排序

按字段对对象数组进行排序,然后按字母顺序排序

对对象数组进行排序,然后按ID分组(JavaScript)

按单键按日期值对对象数组进行排序

按对象中的日期对对象数组进行排序

如果看到双重值,如何按键对对象数组进行排序,然后按javascript中的另一个键对它们进行排序?

如何按日期对对象数组进行排序?

按日期的2个属性对对象数组进行排序

似乎无法按日期对对象数组进行排序

如何按日期对对象的嵌套数组进行排序

如果日期相同,则按日期排序对象数组,然后按字符串值排序

使用Comparator.comparing按对象列表然后按第二个属性对对象进行排序

按日期对对象列表进行排序

按日期/Firestore 对对象进行排序

目录进入数组,然后按创建日期对文件进行排序

按属性对对象数组进行排序

按值对对象数组进行排序

根据日期对对象数组进行排序

根据日期对对象数组进行排序

首先根据子数组然后根据日期对对象数组进行排序(不拆分数组)

按日期对对象数组进行排序,其中日期是关键

按字母顺序对对象数组进行排序,然后将空值移到末尾

首先按给定属性按数字对对象数组进行排序,然后对字母进行排序(数字具有子排序)

Laravel-首先按字符串值对数组进行排序,然后按日期排序

从数组中的字符串中获取日期,然后按日期对这些字符串进行排序

如何按键对对象数组进行排序,然后按排序顺序将另一个键推送到新数组?

按日期对对象中的对象进行排序反应

如何使用javascript根据创建日期按升序对对象数组进行排序并做出反应?

如何在Python中按日期时间对对象数组进行排序?