如何格式化类似1950-12-30T18:25:43.511Z的Javascript日期

How do I format a Javascript date like 1950-12-30T18:25:43.511Z

本文关键字:511Z Javascript 日期 格式化 1950-12-30T18      更新时间:2024-01-19

我有一个API,其中我的日期需要像这个一样格式化

1950-12-30T18:25:43.511Z

这种格式对我来说有些陌生,我想知道如何才能采用这种格式

1950-12-30 

把它变成类似前者的东西。仅供参考,我使用的是javascript(express)

您正试图将日期转换为ISO格式,而本机Date对象将使用.toISOString()方法为您完成此操作,非常简单:

var newDate = new Date("0977-03-28");
console.log(newDate.toISOString());

其结果是:0977-03-28T00:00:00.000Z(看起来很熟悉?:D)

您将遇到的一个问题(如果是问题)是,因为您只有日期值,而没有时间值,所以字符串的最后一部分将始终是T00:00:00.000Z(即Date的"时间"部分)。你会看到,如果你使用今天的日期,使用var newDate = new Date();(捕捉这一瞬间),时间将被填充:2015-02-19T16:50:18.078Z(测试时)

有关更多信息,请参阅此处:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString

(注意:在IE中,这只适用于v9或更高版本,但该链接也有适用于旧IE版本的polyfill)