1
根据momentjs文档toJSON()
生成ISO 8601格式化字符串和moment.defaultFormat
是ISO 8601格式。Momentjs严格格式总是返回'无效日期'
考虑这个帐户我希望得到一个有效的日期,但
moment(moment().toJSON(), moment.defaultFormat, true).toString()
总是返回“无效的日期”。
根据momentjs文档toJSON()
生成ISO 8601格式化字符串和moment.defaultFormat
是ISO 8601格式。Momentjs严格格式总是返回'无效日期'
考虑这个帐户我希望得到一个有效的日期,但
moment(moment().toJSON(), moment.defaultFormat, true).toString()
总是返回“无效的日期”。
您对,moment().toJSON()
返回ISO 8601格式,但不是moment.defaultFormat
的相同。
问题是moment().toJSON()
包括不是的moment.defaultFormat
部分分数秒(SSS
令牌)(即YYYY-MM-DDTHH:mm:ssZ
)。
moment().toJSON()
输出可被解析:
moment(String)
moment(String, String)
传递moment.ISO_8601
作为格式参数toJSON()
输出('YYYY-MM-DDTHH:mm:ss.SSSZ'
)这里相一致的格式字符串现场示例:
console.log(moment(moment().toJSON(), moment.defaultFormat, true).toString() );
console.log(moment().toJSON());
console.log(moment.defaultFormat);
console.log(moment(moment().toJSON(), 'YYYY-MM-DDTHH:mm:ss.SSSZ', true).toString() );
console.log(moment(moment().toJSON(), moment.ISO_8601, true).toString() );
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
是否defaultFormat您的JSON字符串匹配吗? – Icepickle
它适用于momentjs v2.2.1,不适用于以后的版本http://jsfiddle.net/dalinhuang/a6afq07y/ –
@DanielH你在你的小提琴中使用旧版本的momentjs – VincenzoC