uniapp处理数组根据时间重组

uniapp开发微信小程序如何实现下图的处理数组根据时间重组数据(第一张和第三张)

img

img


let data = [
        {
            dat: '2023-06-05',
            ridername: '张三'
        },
         {
            dat: '2023-06-06',
            ridername: '张三2'
        },
         {
            dat: '2023-06-05',
            ridername: '张三3'
        },
         {
            dat: '2023-06-07',
            ridername: '张三4'
        },
         {
            dat: '2023-06-06',
            ridername: '张三5'
        },
         {
            dat: '2023-06-05',
            ridername: '张三6'
        }
    ]
    console.log(formatData(data)) //
    function formatData(arr) {
        let list = [];
        arr.map(item => {
            if(list.some(item2 => item2.dat == item.dat)) {
                list.map(item2 => {
                    if(item2.dat == item.dat) {
                        if(item2.list) {
                            item2.list.push(item)
                             console.log(item)
                        } else {
                            item2.list = [item]
                           
                        }
                    }
                })
            } else {
                list.push({
                    dat: item.dat,
                    list: [item]
                })
            } 
        })
        return list;
    }

让后端处理好给你返回 手动狗头