按时间戳对对象数组进行排序

Sort an array of object by timestamp

本文关键字:排序 数组 对象 时间戳      更新时间:2023-09-26

我有以下对象:

var jsonList = {
   ref : "TEST1",
   inventory : [
         {
            id : "a1",
            date : 1401462270
         },
         {
            id : "a2",
            date : 1414836094
         }
   ]
}

inventory数组不是按日期排序的,我想按日期对这个对象数组进行排序。最近在第一位。

我该怎么做?

当存在整数时,可以返回差值进行比较。

var jsonList = { ref: "TEST1", inventory: [{ id: "a1", date: 1401462270 }, { id: "a2", date: 1414836094 }] },
    sorted = jsonList.inventory.sort(function(a, b) {
        return a.date - b.date;
    });
document.write('<pre>' + JSON.stringify(sorted, 0, 4) + '</pre>');

var sorted = jsonList.inventory.sort(function(a,b) {
   return a.date < b.date ? -1 : 1;
});