除非我将其复制到新变量

时间:2016-03-26 19:04:41

标签: javascript node.js mean

我创建了一个返回一些JSON的MEAN应用程序,我想在显示之前创建一个简单的函数来更改JSON中的日期字段 - 但是如果我制作一个副本,我只能这样做将数据转换为新变量。有人可以解释为什么会这样吗?我认为一直熟悉javascript直到这个!!这与范围或mongoDB有关吗?

我的路线:



 JobsImportCtrl = require('../controllers/jobsImportCtrl'); 

module.exports = function (app) {

    app.get('/api/jobs', function (req, res) {
        Jobsctrl.getJobs(res);
    });




我的控制器:



var Jobspretty = require('../helpers/jobspretty'); // pretty job dates etc

module.exports = {
  // get all jobs
  getJobs: function(res)  {


      Job.find(function (err, jobs){
          // if there is an error retrieving, send the error. nothing after res.send(err) will execute
          if (err) {
              res.send(err);
          }

         res.json(Jobspretty.deadlineDates(jobs));

      });
  },




我的助手功能:



var moment = require('moment'); // momentjs library
moment().format();


// human readable deadline dates using momentjs

module.exports = {
    deadlineDates: function(jobs) {
        var prettyjobs = [];

        jobs.forEach(function(job) {
            var obj2 = JSON.parse(JSON.stringify(job));
            obj2.deadline  = moment(job.deadline).format("dddd, MMMM Do YYYY");
            prettyjobs.push(obj2);
        });

        return prettyjobs;
    }
};




0 个答案:

没有答案