gpt4 book ai didi

javascript - 日期-fns "RangeError: Invalid time value"

转载 作者:行者123 更新时间:2023-12-02 01:47:36 25 4
gpt4 key购买 nike

我正在尝试使用 date-fns 将 18:00:00.000 转换为 24H (18:00) 和 12H (6PM) 格式。但是,18:00:00.000 的输入值会给出“RangeError:无效时间值”。

我的代码

dateFns.format(new Date(18:00:00.000), 'H:mm')

如果我以 dateTime 格式传递时间,例如 2022-01-04T11:00:00.000Z,我没有问题,但我只需要时间(小时和分钟)。

最佳答案

您的代码失败是因为 new Date() 需要有效的日期时间字符串来创建新的日期对象。要解决此问题,只需制定一个当前日期字符串并附上您需要的时间戳并将其传递给 new Date() 方法。然后您可以将日期对象传递给格式方法以获得所需的输出。

引用this根据您的要求设置日期格式的图表。

const now = dateFns.format(new Date(), 'YYYY-MM-DD');
const custTime = '18:00:00.000';
const custDt = new Date(`${now} ${custTime}`);
console.log(dateFns.format(custDt, 'h:mm A'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/date-fns/2.0.0-alpha0/date_fns.min.js" integrity="sha512-0kon+2zxkK5yhflwFqaTaIhLVDKGVH0YH/jm8P8Bab/4EOgC/n7gWyy7WE4EXrfPOVDeNdaebiAng0nsfeFd9A==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>

关于javascript - 日期-fns "RangeError: Invalid time value",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70727103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com