moment.js使用月份作为日期而不是日期

Har*_*lic 2 javascript datetime angularjs momentjs

我正在我的项目中使用当前的moment.js(moment-with-locales.js - v.2.14.1).我想删除我的日期时间字符串的时间,只获取日期.但是,如果我使用.format()moment.js 的方法,我的日期不正确.

我想格式化这个日期时间字符串:

'08.10.2016 11:00 '到'08.10.2016 '

这是我在角度项目中使用的剪辑:

var date = moment('08.10.2016 11:00').format('DD.MM.YYYY')
console.log(date)
Run Code Online (Sandbox Code Playgroud)

如果我运行这个,我得到了这个输出

10.08.2016
Run Code Online (Sandbox Code Playgroud)

而不是08.10.2016

有趣的是,如果我想得到我的日期时间字符串的时间戳(毫秒),它就完美了.例:

  var dateStart = moment('08.10.2016 19:00', 'DD.MM.YYYY HH:mm').valueOf()
  console.log(dateStart)
Run Code Online (Sandbox Code Playgroud)

将返回

1475946000000 -> Sat Oct 08 2016 19:00:00 GMT+0200
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到正确的日期?

Vla*_*r M 7

这取决于您的区域设置.en-US定位意味着时刻将按"月日"解析.所以,你需要解析模式:

var date = moment('08.10.2016 11:00','DD.MM.YYYY HH:mm').format('DD.MM.YYYY')
Run Code Online (Sandbox Code Playgroud)