一尘不染

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

javascript

我有一个带有几个键值对的对象数组,我需要根据’updated_at’对它们进行排序:

[
    {
        "updated_at" : "2012-01-01T06:25:24Z",
        "foo" : "bar"
    },
    {
        "updated_at" : "2012-01-09T11:25:13Z",
        "foo" : "bar"
    },
    {
        "updated_at" : "2012-01-05T04:13:24Z",
        "foo" : "bar"
    }
]

这样做最有效的方法是什么?


阅读 293

收藏
2020-04-25

共1个答案

一尘不染

您可以使用Array.sort

这是一个例子:

var arr = [{

    "updated_at": "2012-01-01T06:25:24Z",

    "foo": "bar"

  },

  {

    "updated_at": "2012-01-09T11:25:13Z",

    "foo": "bar"

  },

  {

    "updated_at": "2012-01-05T04:13:24Z",

    "foo": "bar"

  }

]



arr.sort(function(a, b) {

  var keyA = new Date(a.updated_at),

    keyB = new Date(b.updated_at);

  // Compare the 2 dates

  if (keyA < keyB) return -1;

  if (keyA > keyB) return 1;

  return 0;

});



console.log(arr);
2020-04-25