here's the code:
rowData = [
{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:00:00",
            dateEnd: "2019-10-12 09:05:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:40:00",
            dateEnd: "2019-10-12 08:45:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:15:00",
            dateEnd: "2019-10-12 08:25:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:10:00",
            dateEnd: "2019-10-12 08:15:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:00:00",
            dateEnd: "2019-10-12 08:05:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 07:00:00",
            dateEnd: "2019-10-12 08:05:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 06:00:00",
            dateEnd: "2019-10-12 07:05:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 05:00:00",
            dateEnd: "2019-10-12 06:05:000"
        },{
            server: "Server 1",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 04:00:00",
            dateEnd: "2019-10-12 05:05:000"
        }
{
            server: "Server 2",
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:03:00",
            dateEnd: "2019-10-12 09:05:000"
            },
            {
            server: "Server 2",
            ping: "2 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:00:00",
            dateEnd: "2019-10-12 09:01:000"
            }
}
What I want to do is group the data based on the server which is the "Server 1" and then it will get the latest data. it depends if it will be based on the date which is the dateStart and dateEnd.
output should be like this:
[
    {
        server: "Server 1",
        ping: "10 ms",
        dl: "50Mbit/s",
        ul: "50Mbit/s",
        ispcon: true,
        dateStart: "2019-10-12 09:00:00",
        dateEnd: "2019-10-12 09:05:000"
        data: [
        {
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:00:00",
            dateEnd: "2019-10-12 09:05:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:40:00",
            dateEnd: "2019-10-12 08:45:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:15:00",
            dateEnd: "2019-10-12 08:25:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:10:00",
            dateEnd: "2019-10-12 08:15:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 08:00:00",
            dateEnd: "2019-10-12 08:05:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 07:00:00",
            dateEnd: "2019-10-12 08:05:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 06:00:00",
            dateEnd: "2019-10-12 07:05:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 05:00:00",
            dateEnd: "2019-10-12 06:05:000"
        },{
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 04:00:00",
            dateEnd: "2019-10-12 05:05:000"
        }
        ]
        },
        {
        server: "Server 2",
        ping: "10 ms",
        dl: "50Mbit/s",
        ul: "50Mbit/s",
        ispcon: true,
        dateStart: "2019-10-12 09:03:00",
        dateEnd: "2019-10-12 09:05:000"
        data: [
        {
            ping: "10 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:03:00",
            dateEnd: "2019-10-12 09:05:000"
            },
            {
            ping: "2 ms",
            dl: "50Mbit/s",
            ul: "50Mbit/s",
            ispcon: true,
            dateStart: "2019-10-12 09:00:00",
            dateEnd: "2019-10-12 09:01:000"
            }
        ]
    }
]
Thanks in advance
 
     
     
    