【发布时间】:2020-06-08 21:11:22
【问题描述】:
我在将 Excel 时间转换为 UTC 时遇到了一些问题。
我从 excel 收到的时间是这样的:0.3333333333333333 它是一个介于 0 和 1 之间的数字。
我有这个代码:
const formatTime = (days) => {
const timeFormated = new Date(days * 864e5).toLocaleString("en-US", {
timeStyle: "short",
timeZone: "UTC",
});
return new moment.utc(timeFormated, "HH:mm").format();
};
假设我将其传递给时刻:formatTime(0.3333333333333333)
我得到一个这样的字符串,而不仅仅是时间:
"2020-06-08T20:00:00Z"
我只需要向用户显示时间,例如:6:00 PM 或无论结果如何,它都应该是 UTC 人类可读的。
请注意我正在使用toLocaleString 做一件事,我不知道它是否正确。因此,如果我做错与否,我想得到一些建议,以及如何才能仅向用户显示时间。你知道,小时和分钟。
【问题讨论】:
-
你有没有试过像这样传递一个格式:
format('h:mm:ss a')
标签: javascript reactjs ecmascript-6 momentjs