用时刻js解析格式化日期

时间:2016-11-17 20:02:14

标签: javascript date momentjs

我正在使用帮助时刻js格式化传入日期2016-11-10T21:59:53.000+0000

  myService.getDate(id)
       .then(function (data) {
           data.occuredDate = moment.utc(new Date(data.occuredDate)).format('DD MMM YYYY h:mm a');
       };

输出结果如下:10 Nov 2016 10:00 pm

现在我正在尝试将此日期解析回字符串,但不幸的是我的尝试失败了

  console.log(new Date(obj.occuredDate))
  console.log(new Date(obj.occuredDate).toString())
  console.log(Date.parse(obj.occuredDate))
  console.log(new Date(Date.parse(obj.occuredDate)))
  console.log(new Date(Date.parse(obj.occuredDate)).toString())

  Invalid Date
  Invalid Date
  NaN
  Invalid Date
  Invalid Date

有人可以解释我的错误吗?

提前致谢。

1 个答案:

答案 0 :(得分:3)

在解析非标准格式时,只需指定格式即可。然后使用moment toDate()方法获取普通的js Date对象:

moment.utc(obj.occuredDate, 'DD MMM YYYY h:mm a').toDate();

SIDENODE

使用moment.utc(new Date(data.occuredDate))并没有多大意义。只需解析字符串。