我有一个"2016-07-14T10:52:36.000Z"
这样的日期格式,我想将其转换为yyyymmddhis
格式。
原因是在我的项目中,我将文件存储在AWS S3中,并通过上传时间生成了链接。
我尝试使用moment.js moment("2016-07-14T10:52:36.000Z").format('yyyymmddhis');
有人可以帮忙吗?
答案 0 :(得分:0)
格式字符串错误。
更改
.format('yyyymmddhis')
收件人
.format('YYYYMMDDHms')
或
.format('YYYYMMDDHHmmss') // with "0" padding for hours/minutes/seconds
var output = moment("2016-07-14T10:52:36.000Z").format('YYYYMMDDHHmmss');
console.log(output);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.js"></script>
答案 1 :(得分:0)
如果您不想使用任何第三方库,则可以创建javascript日期原型
Date.prototype.customFormat = function(){
var currentDate = new Date(this);
var currentMonth = currentDate.getMonth() >= 9 ? currentDate.getMonth() + 1 : "0" + (currentDate.getMonth() +1);
return currentDate.getFullYear().toString()+currentMonth+currentDate.getDate().toString()+currentDate.getHours().toString()
+currentDate.getMinutes().toString()+currentDate.getSeconds().toString();
};
使用:
new Date("2016-07-14T10:52:36.000Z").customFormatt()
输出:
20160714162236
答案 2 :(得分:-1)
无需转换为日期或使用大型库。只需修改字符串:
let s = "2016-07-14T10:52:36.000Z"
console.log(s.replace(/\D/g,'').substr(0,14))