首页 > 解决方案 > 用 Javascript 格式化 DateTime

问题描述

我正在使用 javascript 中的日期我正在使用这种方式来获取我的日期对象

let date = new Date(1615878420000) //passing time in milliseconds by parameter

我需要 24 小时格式的日期时间。我可以理解为什么当我使用这种方式时,控制台浏览器会返回:

在此处输入图像描述

当我做这个时:

let date = Date (1615878420000) 

如果我不输入单词 new 它会返回一个字符串,但这个字符串的时间是 24 小时格式

在此处输入图像描述

如果我这样做:

let date = new Date(1615878420000)
date.getHours()

在此处输入图像描述

我得到一个数字 1 假设时间是 13:00 我想在使用 getHours() 时得到 13

标签: javascript

解决方案


获取时间并不像您认为的那样起作用。如果您阅读它的规范,它将根据本地时间为您提供一个从 0 到 23 的数字,代表指定日期的小时。因此,您可能会因此而看到转换。

时间规范

对于下面的第一个示例,我将在示例一中看到 9,因为我是 -0400。第二个我会看到 13,因为它是 UTC 的小时数。

const time = new Date(1615899608000);
const hoursLocal = time.getHours();
const hoursUTC = time.getUTCHours();


console.log(hoursLocal);// will hour for whatever your time zone is
console.log(hoursUTC);// will be hour for UTC


推荐阅读