我正在使用MomentJS将我从服务获得的日期字符串解析为字符串月份。
字符串格式为“2013-1”,应该是1月。时刻得到了正确的答案。
然而,一旦我超越八月,有些事情很奇怪。
我有例如
console.log(moment('2012-9').format('MMMM'));
九月归我。
然后我这样做:
console.log(moment('2012-10').format('MMMM')); it also returns September.
这最终映射11到10月和12到12月,因此截止12月份的整个数据集。
我做错了什么,或问题是什么?我已经检查了所有其他月份并且没有这样做。
答案 0 :(得分:2)
我已经确定了发生这种情况的原因。
日期格式'2012-1'不是标准的ISO日期。
要在我使用日期时返回正确的月份,我必须指定我的日期字符串所在的格式,所以我使用
console.log(moment('2012-10', 'YYYY-M').format('MMMM'));
返回正确的月份,10月。
感谢大家的帮助。
答案 1 :(得分:0)