格式化日期与moment.js
我有一个这种格式的字符串:
I have a string in this format:
var testDate = Fri Apr 12 2013 19:08:55 GMT-0500(CDT)
我想使用moment.js以这种格式获取 mm / dd / yyyy:04/12 / 2013
用于展示。
I would like to using moment.js get it in this format mm/dd/yyyy : 04/12/2013
for display.
我试图用这种方法做到这一点,
I tried to do it using this method,
moment(testDate,'mm/dd/yyyy');
哪些错误并说没有这样的方法叫做replace
?我是以错误的方式接近这个吗?
Which errors and says there is no such method called replace
? am i approaching this in the wrong way?
编辑:
我还应该提到我使用的是预打包版本的moment.js,打包为meteor.js
I should also mention that i am using a pre packaged version of moment.js, packaged for meteor.js
Object [object Date] has no method 'replace' : The Exact error from the console
堆栈跟踪:
at makeDateFromStringAndFormat (http://127.0.0.1:3000/packages/moment/lib/moment/moment.js?b4e3ac4a3d0794023a4410e7941c3e179398b5b0:539:29)
at moment (http://127.0.0.1:3000/packages/moment/lib/moment/moment.js?b4e3ac4a3d0794023a4410e7941c3e179398b5b0:652:24)
at populateProfileForEdit (http://127.0.0.1:3000/client/views/home/administration/directory/profiles/profiles.js?acfff908a6a099f37312f62892a22b40f82e5e0f:147:25)
at Object.Template.profile_personal.rendered (http://127.0.0.1:3000/client/views/home/administration/directory/profiles/profiles.js?acfff908a6a099f37312f62892a22b40f82e5e0f:130:13)
at Spark.createLandmark.rendered (http://127.0.0.1:3000/packages/templating/deftemplate.js?b622653d121262e50a80be772bf5b1e55ab33881:126:42)
at http://127.0.0.1:3000/packages/spark/spark.js?45c746f38023ceb80745f4b4280457e15f058bbc:384:32
at Array.forEach (native)
at Function._.each._.forEach (http://127.0.0.1:3000/packages/underscore/underscore.js?867d3653d53e9c7a171483edbcad9670e12288c7:79:11)
at http://127.0.0.1:3000/packages/spark/spark.js?45c746f38023ceb80745f4b4280457e15f058bbc:382:7
at _.extend.flush (http://127.0.0.1:3000/packages/deps/deps.js?9642a93ae1f8ffa8eb1c2475b198c764f183d693:231:11)
moment()
的第二个参数是 解析格式而不是显示格式。
The 2nd argument to moment()
is a parsing format rather than an display format.
For那,你想要 .format()
方法:
For that, you want the .format()
method:
moment(testDate).format('MM/DD/YYYY');
另请注意,案件确实很重要。对于Month,Day和Year,格式应为大写。
Also note that case does matter. For Month, Day of Month, and Year, the format should be uppercase.