javascript - moment.js 中的日期格式,奇怪的日期值

标签 javascript date momentjs

所以我有两种来自 json 的日期。

m = '201811';
n = '/Date(1433030400000)/';

我正在尝试使用 moment.js 来格式化时间,但我想我找不到合适的方法。

moment(m).format('YYYY DD') //"201811 01"

我无法理解的 n 值会导致此输出:

moment(m).format('YYYY DD')//"2015 31"

最佳答案

当您将日期传递给 moment() 构造函数时,您可能必须指定日期的格式。

所以对于第一次约会你需要做的:

moment(m, 'YYYYMM').format('YYYY MM'); // if the date is indeed in the form YYYYMM

对于第二个日期,只需从字符串中提取数字部分并将其提供给 moment:

var ts = n.match(/(\d+)/);
moment(+ts[1]).format('YYYY DD');

查看代码片段:

var m = '201811';
var n = '/Date(1433030400000)/';

alert(moment(m, 'YYYYMM').format('YYYY MM'));

var ts = n.match(/(\d+)/);
moment(+ts[1]).format('YYYY DD');

alert(moment(+ts[1]).format('YYYY MM'));
<script src="http://momentjs.com/downloads/moment.js"></script>

编辑:

感谢@MattJohnson,如果你至少有 moment 版本 1.3.0,你可以简单地将 /Date(1433030400000)/ 形式的字符串传递给 moment() 构造函数,它会自动检测正确的格式,另请参见 here .

关于javascript - moment.js 中的日期格式,奇怪的日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31318547/

相关文章:

javascript - Moment.js isBefore 函数未按预期工作

javascript - moment isBetween 返回 false

javascript - 试图捕获在 jQuery 中选择了哪个按钮

javascript - 我不断收到错误 firebase.database is not a function

java - 在java中显示基于时间的早上,下午,晚上,晚上消息

mysql - 从当前日期减去月份 sql

javascript - 奇怪的: Javascript Date-Object mysteriously adding month?

javascript - react-redux 嵌套组件不是父组件中的 ReactClass?

javascript - 避免逗号表达式和重复声明

javascript - 使用 javascript 或 momentjs 的时间范围