从字符串格式转换日期并排序

时间:2019-06-06 15:06:42

标签: javascript date-formatting

我正在从后端获取字符串格式的日期,我想按升序对日期进行排序

我想使用日期对数据进行排序

$ jq '.Fruits |= (. + input.Fruits | [group_by(.id)[] | add | {name,weight,id}])' \
file1.json file2.json
{
  "Fruits": [
    {
      "name": "Orange",
      "weight": 7,
      "id": 28748
    },
    {
      "name": "Apple",
      "weight": 5,
      "id": 652090
    }
  ]
}

我从后端获取的日期格式

array.sort(function(a, b) {
  return new Date(parseInt(a.ResultTimestamp)).getTime() - new Date(parseInt(a.ResultTimestamp)).getTime();
});

1 个答案:

答案 0 :(得分:1)

据我所知(可能还不够),您需要一个自定义解析函数,方法是提取所有日期段并创建Date的新实例。

function parseDate(date) {
  const [year, month, day, time] = date.split('-');
  const [hours, minutes, seconds, fr] = time.split('.');
  return new Date(year, month, day, hours, minutes, seconds).getTime();
}

const array = ['2018-01-06-00.55.39.109000', '2019-01-06-00.55.39.109000'];

array.sort(function(a, b) {
  return parseDate(b) - parseDate(a);
});

console.log(array);

我简化了示例,让我知道是否不清楚。