node.js - Node.Js MongoDB format date while getting List
问题描述
I'm New to Node.Js and MongoDB . Am getting Date as CreatedDate : 2018-09-06T06:14:53.111Z . In output am trying to display as "MM/DD/YYYY" .
Here is my code am getting last 60 days data form Collection.
var today = new Date();
today.setDate(today.getDate() - 60);
ODSCase.find({ UserGUID: req.UserGUID ,CreatedDate:{"$gte":new Date(today)} }).sort({ModifiedDate: -1})
.exec()
.then(doc => {
res.status(200).json(doc);
})
.catch(err =>{ err500.err500(err,req,res,next);});
Output:
{
"_id": "5b9242aed7ae250c74325362",
"CustomerGUID": "ee1ac5c7-c0f9-466c-8859-95dc1fcd0334",
"InstanceGUID": "878aee54-1b95-46d1-9e26-b9eaea9f9cd4",
"UserGUID": "f0272467-3ec5-48f7-5553-987900b57a11",
"CaseNumber": 1536311981016,
"CaseStatus": "New",
"CampaignID": "66336533-3765-3266-4d43-382f392f3230",
"CreatedDate": "2018-09-07T09:19:42.586Z",
"CreatedBy": "f0272467-3ec5-48f7-5553-987900b57a11",
"ModifiedDate": "2018-09-07T09:19:42.586Z",
"ModifiedBy": "f0272467-3ec5-48f7-5553-987900b57a11",
"IsDeleted": false,
"Source": "Dev",
"__v": 0
},
解决方案
考虑改为运行聚合管道,它允许您使用诸如$dateToString
可以将日期转换为所需格式的运算符。
例如,可以使用聚合框架运行上述相同的查询:
let today = new Date();
today.setDate(today.getDate() - 60);
const date = new Date(today);
ODSCase.aggregate([
{ '$match': {
'UserGUID': req.UserGUID,
'CreatedDate': { '$gte': date }
} },
{ '$sort': { 'ModifiedDate': -1 } },
{ '$addFields': {
'CreatedDate': {
'$dateToString': {
'format': '%m/%d/%Y',
'date': '$CreatedDate'
}
}
} }
])
.exec()
.then(doc => {
res.status(200).json(doc);
})
.catch(err => err500.err500(err, req, res, next) );
您还可以使用优秀的Moment.js JavaScript 日期库来创建查询中使用的日期对象:
const moment = require('moment');
const date = moment().subtract(60, 'days').toDate(); // or...
const date = moment().add(-60, 'days').toDate();
推荐阅读
- c++ - 如何在没有循环的情况下在 C++ 中总结向量 int 的向量
- c# - 使用 C# 在没有 Oracle 客户端的情况下访问 Oracle DB 9.2
- webpack - 使用 Tailwindcss+postcss 的 Svelte 组件样式的 Webpack
- c - C中的全局常量变量与局部常量变量有什么区别
- llvm - 是否可以在 LLVM IR 中编写 Web 服务器?
- json - 使 .Net Web API JSON 输出漂亮
- excel - 将数据复制到新文件
- sql - 定义SQL中指定间隔之间的条件?
- node.js - 如何使用 heroku 和 nodejs 设置 postgresql 配置?
- android - 身份验证和 Firestore 错误 - NullPointerException