美文网首页
ES6 timestamp、Date格式化为yyyy-MM-dd

ES6 timestamp、Date格式化为yyyy-MM-dd

作者: 现实与妄想交杂的狂想曲 | 来源:发表于2018-10-22 10:49 被阅读0次

根据“https://www.cnblogs.com/liaozhenting/articles/6874871.html”的资料,将其方法转换为了ES6支持的格式,并且变更为了传入date或timestamp参数进去,而非通过Date对象直接调用。

format(timestamp, format) {

const date =new Date(timestamp);

const o = {

'M+':date.getMonth() +1,

'd+':date.getDate(),

'h+':date.getHours(),

'm+':date.getMinutes(),

's+':date.getSeconds(),

'q+':Math.floor((date.getMonth() +3) /3),

S:date.getMilliseconds(),

};

let formatString = format;

if (/(y+)/.test(format)) {

formatString = format.replace(RegExp.$1,

(`${date.getFullYear()}`).substr(4 - RegExp.$1.length));

}

Object.keys(o).forEach((key) => {

if (new RegExp(`(${key})`).test(format)) {

formatString =formatString.replace(RegExp.$1,

RegExp.$1.length ===1 ?o[key] :

(`00${o[key]}`).substr(`${o[key]}`.length));

}

});

return formatString;

},

第一次用简书,不太熟悉怎么调整格式,先这样吧,上面是传入timestamp的方法,如果想传入date的话,去掉“const date =new Date(timestamp);”这句,参数名“timestamp”更改为"date"即可。

相关文章

网友评论

      本文标题:ES6 timestamp、Date格式化为yyyy-MM-dd

      本文链接:https://www.haomeiwen.com/subject/qzbwzftx.html