如何使用momentjs获取特定的日期格式?

时间:2015-06-05 11:07:29

标签: javascript date calendar momentjs

我想用本地化的字符串显示以特定格式点击的日期,但是虽然它显示了设置的语言环境,但我得到的字符串是:

Fri Jun 05 2015 00:00:00 GMT+0300 (EEST)

我想将其转换为Friday, 5. June 2015的本地化字词。 在我console.log target时的clickEvents上,我在date._d下收到了错误的字符串,尽管在date._locale日期下我也看到了本地化的内容。 一旦我使用target.date.toDate(),我真的不明白如何更改格式。 我在CLNDR启动时的clickEvents:

clickEvents: {
    click: function (target) {
        $('.selected-date').text(target.date.toDate());
        console.log(target);
    }
},

不确定这是Moment还是CLNDR问题,但我倾向于Moment,因为CLNDR正在使用它。

这是console.log

返回的内容
{
  element: div.day.today.calendar-day-2015-06-05.calendar-dow-4,
  events: Array[0], date: Moment,
  date: Moment {
    _d: Fri Jun 05 2015 00:00:00 GMT+0300 (EEST)
    _f: "YYYY-MM-DD "
    _i: "2015-06-05"
    _isAMomentObject: true
    _isUTC: false
    _locale: Locale
    _pf: Object
    __proto__: Moment
    element: div.day.today.calendar-day-2015-06-05.calendar-dow-4
    events: Array[0]
    __proto__: Object
  }
}

这样的事情。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

你真的不能自己推动自己的"当涉及本地化日期时,因为每个语言环境都有自己的一组本地化日期字符串。这是因为不同国家/地区的日期不同。

为什么不想使用国家/地区的格式?如果来自其他国家/地区的人使用您的网站,他们会发现其他日期格式不同。

您可以通过以下方式获得与之相似的内容:

moment(date).format('dddd, LL');

对于美国,那将打印

Thursday, September 4 1986