如何使用日期对象而不是日期'字符串'并且仍然达到相同的结果

时间:2015-01-19 19:24:39

标签: javascript node.js mongodb mongoose

我有以下架构:

var MySchema = new Schema ({
    event: { 
            full: String,
            date: String,
            name: String,
    }
});

值的示例:

event.date = '16/02/2015' (DD/MM/YY)
event.name = 'Classic'
event.full = Concatenation of event.date and event.name = '16/02/2015 Classic'

这三个是字符串,我需要在event.date中使用对象日期,以便在我的视图中按日期排序。

我的问题是:

如何在event.date中使用此格式的对象日期? (DD / MM / YY)..并且仍然实现在event.full中连接event.date(对象日期)+ event.name(string)

非常感谢!!

1 个答案:

答案 0 :(得分:2)

使用Javascript Date()方法将字符串转换为Date对象。

var MySchema = new Schema ({

  var d = new Date('16/02/2015')
  //This returns a Date object: 16 February 2015 00:00:00 UTC.
  //You can now apply prototypal functions which belong to the Date() method.

  var datetime = d.getDate() + "/" + d.getMonth() + "/" + d.getFullYear();
  var eventName = "Classic";
  var fullName = datetime + " " + eventName;

  event: { 
          date: datetime,
          name: eventName,
          full: fullName
  }
});

然后,您可以随意选择是使用Date对象还是连接字符串。

另一个选择是使用Moment.js库,它专门处理这些类型的情况。

Moment.js的用法如下:

moment("20150216").format("MM/DD/YY"); 

Javascript Date Reference