![](/img/trans.png)
[英]How to convert an ISO 8601 date to '/Date(1525687010053)/' format in javascript?
[英]how to Convert Date into ISO Date Format in javascript
我有一个这样的日期,我应该将它们转换成 ISO 格式
const date = 05/23/2022;
我需要这样
2022-05-23T00:00:00Z
请注意, .toISOString()
始终返回UTC中的时间戳,即使相关时刻处于本地模式也是如此。 这样做是为了与原生 JavaScript Date .toISOString()
的规范保持一致,如ES2015
规范中所述。
let date = '24.05.2022 0:00:00'; let parsedDate = moment(date, 'DD.MM.YYYY H:mm:ss') console.log(parsedDate.toISOString());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.1/moment.min.js"></script>
您可以使用String.split()
获取相关日期的日、月和年。
然后我们可以传递给Date.UTC()
function,然后传递给Date()
构造函数。 (注意:我们将monthIndex传递给 Date 构造函数,这就是我们从 month 中减去 1 的原因)
要显示为 ISO 字符串,我们可以使用Date.toISOString()
const [month, day, year] = '05/23/2022'.split('/'); const date = new Date(Date.UTC(year, month - 1, day)); const result = date.toISOString(); console.log('Date (ISO):', result);
我们也可以使用日期/时间库(例如luxon
)轻松地做到这一点。
我们将使用DateTime.fromFormat()
function 来解析输入字符串,将时区设置为“UTC”。
要 output 的 ISO 日期,我们可以使用DateTime.toISO()
function:
const { DateTime } = luxon; const date = DateTime.fromFormat('05/23/2022', 'MM/dd/yyyy', { zone: 'UTC'}); console.log('Date (ISO):', date.toISO())
<script src="https://cdnjs.cloudflare.com/ajax/libs/luxon/2.3.1/luxon.min.js" integrity="sha512-Nw0Abk+Ywwk5FzYTxtB70/xJRiCI0S2ORbXI3VBlFpKJ44LM6cW2WxIIolyKEOxOuMI90GIfXdlZRJepu7cczA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
我们也可以在 moment.js 中执行此操作,先使用moment.utc()
,然后使用.toISOString()
:
const date = moment.utc('05/23/2022', 'MM/DD/YYYY'); console.log('Date (ISO):', date.toISOString())
<script src="https://momentjs.com/downloads/moment.js"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.