如何使用moment.js将日期格式化为iso 8601但没有破折号和冒号并将时间设置为0,例如如果我有这样的约会:
2016-10-08T09:00:00Z
我如何格式化为:
20161008T000000Z
做
moment(date).toISOString()
给 2016-10-08T09:00:00.000Z
这不是我想要的。
最佳答案
您可以简单地将您的输入解析为一个 moment 对象并使用 startOf
将时间设置为 00:00:00
.那么你可以使用 format
以自定义格式获取字符串的方法。
这里有一个使用字符串输入的工作示例,如果您的输入是 javascript Date 对象,您也可以使用相同的代码。
// Input date as string
var s = '2016-10-08T09:00:00Z';
// Reset time part
// var m = moment(s).startOf('day'); // no UTC
var m = moment.utc(s).startOf('day'); // UTC mode
// Format using custom format
console.log(m.format('YYYYMMDD[T]HHmmss[Z]'));
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.1/moment.min.js"></script>
关于momentjs - moment.js 将日期格式化为没有破折号的 iso 8601?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39936830/