Mongoose关于当天日期的查询

参考:https://blog.csdn.net/difffate/article/details/70312894

Ant Design Pro中,有关于日期的查询条件,但日期是以数字表示的

Request URL: http://localhost:8001/api/factory?CreateAt=1551688252843

如果将这个数字转换成日期,则是,可以看到,其中是有小时、分钟、秒钟、毫秒的,这个显示不合要求

new Date(parseInt(CreateAt, 10))
2019-03-04T08:38:34.775Z

可以用到moment.js,进行转换,

moment(new Date(parseInt(CreateAt, 10))).format('YYYY-MM-DD')
2019-03-04

可是我又希望带上时间,但是默认的

new Date(moment(new Date(parseInt(CreateAt, 10))).format('YYYY-MM-DD'))
2019-03-04T00:00:00.000Z

另外,也希望能够将当天的数据全部取出

如下代码 

        if (CreateAt) {
            let d1 = new Date(moment(new Date(parseInt(CreateAt, 10))).format('YYYY-MM-DD'));
            let d2 = new Date(moment(new Date(parseInt(CreateAt, 10))).add(1, 'days').format('YYYY-MM-DD'));
            filter.CreateAt = {
                $gte: d1,
                $lt: d2
            }
        }
        if (LastUpdateAt) {
            let d1 = new Date(moment(new Date(parseInt(LastUpdateAt, 10))).format('YYYY-MM-DD'));
            let d2 = new Date(moment(new Date(parseInt(LastUpdateAt, 10))).add(1, 'days').format('YYYY-MM-DD'));
            filter.LastUpdateAt = {
                $gte: d1,
                $lt: d2
            }
        }

结果是

{ CreateAt:
   { '$gte': 2019-03-04T00:00:00.000Z,   >=2019-03-04
     '$lt': 2019-03-05T00:00:00.000Z } }   < 2019-03-05

原文地址:https://www.cnblogs.com/weschen/p/10477887.html