片刻js没有按预期工作

时间:2014-06-26 03:59:09

标签: momentjs

我有一个日期对象:

Sun Apr 20 2014 11:48:33 GMT-0400 (EDT)

我希望能够简单地呈现3个字母的月份和日期,例如" 4月20日和#34;

我正在尝试使用Moment.js完成此任务,如下所示:

moment(date_var).format('MMM D');

吐出:" 6月25日"而不是预期的" 4月20日"。

跑步:

JSON.stringify(date_var)

产生:

2014-04-20T15:48:33.000Z

由于

2 个答案:

答案 0 :(得分:1)

演示:http://jsfiddle.net/Nfmns/3/

Html:

<strong>JavaScript </strong><span></span>
<br/>
<strong>Moment </strong>
<p></p>

代码:

$(function(){
var day = new Date(2014, 4, 20,11,48,33);
moment().format();
var mome=moment(day);
$('span').text(day);
$('p').text(mome.format("MMM D"));
});

答案 1 :(得分:1)

你所描述的是不可能的,罗德里戈的例子展示了它是如何运作的。但是,今天(你写这篇文章的那天)是6月25日,所以这是价值的来源。

您可能在没有参数的情况下调用moment(),或者date_var未定义。

你确定你不小心写了:

moment().format('MMM D');

或者date_var声明在某个超出范围的地方,然后再传递给它?有些东西必须考虑到它是未定义的。