首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在node.js中使用带返回值的函数

在node.js中使用带返回值的函数
EN

Stack Overflow用户
提问于 2018-06-03 04:32:06
回答 1查看 32关注 0票数 0

我尝试使用外部模块中的函数来创建日期

helper.js

代码语言:javascript
复制
function createDate() {
  var today = new Date();
  var dd = today.getDate();
  var mm = today.getMonth()+1; //January is 0!

  var yyyy = today.getFullYear();
  if(dd<10){
    dd='0'+dd;
  }
  if(mm<10){
    mm='0'+mm;
  }
  today = dd+'/'+mm+'/'+yyyy;
  return today;
}

module.exports = {
  f1: createDate,
};

然后在我的server.jscreatedAT行中使用它

代码语言:javascript
复制
let helper = require('./helper.js');

app.post('/tasks',  function(req, res) {
  let savedata;
  console.log(req.body);
    let tmpData = [];
    for (let i = 0; i < req.body.length; i ++) {
      savedata = new Model({
        'taskName': req.body[i].taskName,
        'isDone': false,
        //'createdAt': Date.now(),
        'createdAt': helper.f1(),
        'prioraty': req.body[i].prioraty
      });
      tmpData.push(savedata)
    }
    savedata = tmpData;
    Model.collection.insert(savedata, function (err, result) {
      if (err) throw err;

      if (result) {
        res.json(result)
      }
    })
});

但是它返回给我的不是dd/mm/yyyy格式的日期,而是2018-02-05T23:00:00.000Z格式错误,还有time...How我能解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2018-06-03 04:56:00

因此,据我所知,在将日期插入到数据库之前,您不需要格式化日期,真正需要的是在返回响应时格式化日期。以下是对您的代码进行的一些调整:

更改createDate()以接受数据库中的日期值

代码语言:javascript
复制
function createDate(dateFromDb) {
  var today = new Date(dateFromDb);
  var dd = today.getDate();
  var mm = today.getMonth()+1; //January is 0!

  var yyyy = today.getFullYear();
  if(dd<10){
    dd='0'+dd;
  }
  if(mm<10){
    mm='0'+mm;
  }
  today = dd+'/'+mm+'/'+yyyy;
  return today;
}

然后取消对第一个//'createdAt': Date.now()的注释

代码语言:javascript
复制
savedata = new Model({
    'taskName': req.body[i].taskName,
    'isDone': false,
    //'createdAt': Date.now(),
    'prioraty': req.body[i].prioraty
  });

最后,在发送结果之前,请执行以下操作

代码语言:javascript
复制
if (result) {
    result.createdAt = helper.f1(result.createdAt);
    res.json(result)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50660923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档