2023-04-21T16:00:00.000Z js 格式转换为常见时间格式 使用JS方法
时间: 2023-09-24 21:14:11 浏览: 65
可以使用JavaScript内置的Date对象及其方法将ISO格式的时间转换为常见格式,示例代码如下:
```javascript
const isoDateStr = '2023-04-21T16:00:00.000Z';
const date = new Date(isoDateStr);
const year = date.getFullYear(); // 年份
const month = date.getMonth() + 1; // 月份,注意要加1
const day = date.getDate(); // 日期
const hours = date.getHours(); // 小时
const minutes = date.getMinutes(); // 分钟
const seconds = date.getSeconds(); // 秒钟
const formattedDateStr = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
console.log(formattedDateStr); // 输出格式为 "2023-04-21 16:00:00"
```
注意,上述代码会将ISO时间按照本地时间进行转换,如果需要按照UTC时间转换可以使用对应的UTC方法,例如 `date.getUTCFullYear()`, `date.getUTCMonth()`, `date.getUTCDate()` 等。
相关问题
前端将 "2023-06-13T16:00:00.000Z" 格式转换成 2023-06-13 19:00:00类型
您可以使用JavaScript中的Date对象来将 "2023-06-13T16:00:00.000Z" 转换成本地时间。
以下是示例代码:
```javascript
const isoDateString = "2023-06-13T16:00:00.000Z";
const date = new Date(isoDateString);
const localDateString = date.toLocaleString();
console.log(localDateString); // 输出本地时间格式:2023-06-13 19:00:00
```
在这个示例中,我们先创建了一个Date对象,将 ISO 8601 格式的时间字符串作为参数传递给构造函数。然后,我们使用Date对象的toLocaleString()方法将时间转换为本地时间格式。
需要注意的是,toLocaleString()方法输出的时间格式可能因为浏览器和操作系统的不同而有所差异。如果您需要严格按照特定的格式输出时间,可以使用第三方的时间格式化库,如moment.js。
js 2023-06-02 00:00:00.0 转换为 2023-06-01T16:00:00.000Z
这是因为两个时间是同一个时间,只是表示方式不同。前者是以本地时间(可能是你所在时区)表示的,而后者是以 UTC 时间表示的。要将前者转换为后者,可以使用以下 JavaScript 代码:
```
const dateStr = '2023-06-02 00:00:00.0';
const date = new Date(dateStr);
const utcDate = new Date(date.getTime() - (date.getTimezoneOffset() * 60000));
const isoDate = utcDate.toISOString();
console.log(isoDate); // 输出:2023-06-01T16:00:00.000Z
```
在这里,我们首先将字符串转换为日期对象,然后使用 `getTimezoneOffset()` 方法得到本地时间与 UTC 时间之间的分钟差,然后将其转换为毫秒数并从原始日期中减去,得到一个以 UTC 时间表示的日期对象。最后,使用 `toISOString()` 方法将日期对象转换为 ISO 格式的字符串。