JSFiddle - React, Tailwind, and code Playground

by Arif Hasan

JavaScript

const sort_by = (field, reverse, primer) => {

  const key = primer ?
    function(x) {
      return primer(x[field])
    } :
    function(x) {
      return x[field]
    };

  reverse = !reverse ? 1 : -1;

  return function(a, b) {
    return a = key(a), b = key(b), reverse * ((a > b) - (b > a));
  }
}

var homes = [
    {
        "id": "42367c6a-8b49-41ad-9a1b-b10b81bc3098",
        "name": "inv",
        "project": {
            "id": "ccaf7b45-932e-40d0-bef3-eb43586dcc3c",
            "name": "Project 2"
        },
        "time": "00:37:00",
        "last_worked": "2020-04-20T12:32:18"
    },
    {
        "id": "5da383df-d01e-47db-b84c-ab496c2699b6",
        "name": "arif1",
        "project": {
            "id": "ccaf7b45-932e-40d0-bef3-eb43586dcc3c",
            "name": "Project 2"
        },
        "time": "00:00:00",
        "last_worked": "2020-04-16T11:09:44"
    },
    {
        "id": "6a513e14-8775-426b-9e7c-f6ba643cd64f",
        "name": "fff",
        "project": {
            "id": "10848a79-3cbb-4b73-82ee-f0b5fe5f2748",
            "name": "Project 1"
        },
        "time": "00:00:00",
        "last_worked": "2020-04-16T11:13:25"
    },
    {
        "id": "9199c56c-5b80-4b16-9c7e-35ee0fd81d65",
        "name": "dddddd",
        "project": {
            "id": "ccaf7b45-932e-40d0-bef3-eb43586dcc3c",
            "name": "Project 2"
        },
        "time": "00:00:00",
        "last_worked": "2020-04-15T02:32:29"
    },
    {
        "id": "ffaefd75-6945-42a9-a266-4ef142b23de2",
        "name": "Task1x",
        "project": {
            "id": "10848a79-3cbb-4b73-82ee-f0b5fe5f2748",
            "name": "Project 1"
        },
        "time": "00:00:00",
        "last_worked": "2020-04-16T11:11:08"
    }
]
var ab=homes.sort(sort_by('last_worked', true, Date.parse));
if (ab.length>2){
ab.length=2
}
console.log(ab)