获取时间格式为 hh:mm

问题描述 投票:0回答:4

我从 JSON 中获取特定时间。我获得的开始时间值如下所示:2021-02-15T20:30:00+01:00 但我需要在 hh:mm 中得到它。 我尝试了 Date.parse() 但无法从该值获取小时和分钟。 我还能怎样做呢?

fetch('XXX')
        .then(Response => Response.json())
        .then(data => { 

    var summary = data['items']['0']['summary'];
    var location = data['items']['0']['location'];
    var start = data['items']['0']['start']['dateTime'];
    var end = data['items']['0']['end']['dateTime'];
javascript time fetch
4个回答
2
投票

我一直喜欢这种简单的方法。

let time = new Date();
console.log(time.toLocaleString('en-US', { hour: 'numeric', minute: 'numeric', second:'numeric', hour12: true }));  
console.log(time.toLocaleString('en-US', { hour: 'numeric', hour12: true }));  
console.log(time.toLocaleString('en-US', { hour: 'numeric', minute: 'numeric'}));  
console.log(time.toLocaleString('en-US', {second: 'numeric'}));  


1
投票

日期

const date = new Date("2021-02-15T20:30:00+01:00");
const formatted = `${date.getHours()}:${date.getMinutes()}`;

console.log(formatted);


0
投票

使用

getMinutes
getHours
并不是一个很好的解决方案,因为它不能保证填充小于 10 的值。你最好进行字符串操作。解构数组可以使这更容易理解。

const dt = "2021-02-15T20:30:00+01:00";
const [date, time] = dt.split("T")
const [hours, minutes] = time.split(":")
const t = hours + ":" + minutes
'20:30'

如果输入日期时间为

2021-02-15T01:02:00+01:00
,那么使用 getHours 和 getMinutes 将产生
1:2
,这不是预期的时间格式


0
投票

如果您阅读 MomentJs 文档 (http://momentjs.com/docs/#/displaying/),您可以找到以下格式:

moment("2015-01-16T12:00:00").format("hh:mm:ss a")
© www.soinside.com 2019 - 2024. All rights reserved.