根据日期和时间对JSON数据进行排序

Vij*_*ran 1 javascript jquery json

是否可以使用jQuery/Javascript根据时间(2016-12-07T13:00:00)重新排列以下JSON格式.

[
   {
      "id":1,
      "start":"2016-12-07T13:00:00",
      "subject":"test1",
   },
   {
      "id":2,
      "start":"2016-12-07T09:00:00",
      "subject":"test2",
   },
   {
      "id":3,
      "start":"2016-12-07T10:00:00",
      "subject":"test3",
   },
   {
      "id":4,
      "start":"2016-12-07T07:00:00",
      "subject":"test4",
   },
   {
      "id":5,
      "start":"2016-12-07T14:00:00",
      "subject":"test5",
   }
]
Run Code Online (Sandbox Code Playgroud)

Nin*_*olz 5

您可以String#localeCompare在属性的排序回调中使用start,因为ISO 8601日期可以排序为字符串.

var array = [
    { id: 1, start: "2016-12-07T13:00:00", subject: "test1" },
    { id: 2, start: "2016-12-07T09:00:00", subject: "test2" },
    { id: 3, start: "2016-12-07T10:00:00", subject: "test3" },
    { id: 4, start: "2016-12-07T07:00:00", subject: "test4" },
    { id: 5, start: "2016-12-07T14:00:00", subject: "test5" }
];

array.sort(function (a, b) {
    return a.start.localeCompare(b.start);
});

console.log(array);
Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper { max-height: 100% !important; top: 0; }
Run Code Online (Sandbox Code Playgroud)