JavaScript错误的时间戳格式

时间:2019-06-26 11:27:36

标签: javascript date

我目前正在尝试使用JavaScript格式化时间戳。可悲的是,结果有点奇怪。这是我要格式化的日期:

  

2019年5月23日星期四17:34:18 GMT + 0200(MitteleuropäischeSommerzeit)

这是格式化后的样子:

  

23.05.2019

这是我的代码:

j = myDateString;
console.log(j.getUTCDate() + "." + j.getUTCMonth() + "." + j.getUTCFullYear());

但是当我运行代码时,结果就是:

  

23.4.2019

2 个答案:

答案 0 :(得分:5)

getUTCMonth()从0(一月)开始,通过加一个来解决。

console.log(j.getUTCDate() + "." + (j.getUTCMonth() + 1) + "." + j.getUTCFullYear());

答案 1 :(得分:3)

首先,该月关闭。一月是0,十二月是11,所以在月份中加1。 其次,您需要一个向左填充0的函数。幸运的是,JavaScript附带了。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart

例如,

'5'.padStart(2,'0')输出'05'

尝试一下:

console.log(j.getUTCDate().toString().padStart(2,'0') + "." + (j.getUTCMonth() + 1).toString().padStart(2,'0') + "." + j.getUTCFullYear());

[编辑] 此功能可能在较旧的浏览器中不存在,但是我链接的页面上有一个polyfill,很容易实现。