繁体   English   中英

如何使用 date-fns 复制 function

[英]How to replicate a function using date-fns

我正在使用momentjs。 使用它我创建了这个 function:

 const convertToLocalTime = (userHour) => { return userHour + moment().set("hours", userHour).utcOffset() / 60; } console.log(convertToLocalTime(4))
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>

现在我想使用date-fns fns 库复制这个 function,但我不知道如何做到这一点,无法在 date-fns 中找到替代方法。
如何使用 date-fns 复制上面使用 momentjs 的 function?

我不使用date-fns ,但您不需要任何库。

这是使用 JavaScript 的内置Date object 的相同逻辑:

 const convertToLocalTime = (userHour) => { const dt = new Date(); dt.setHours(userHour); return userHour - dt.getTimezoneOffset() / 60; }; console.log(convertToLocalTime(4));

请注意,Moment 的utcOffsetDategetTimezoneOffset的符号相反。

您可以使用另一种方法,因为 JavaScript 的Date object 具有本地和 UTC 日期/时间功能:

 const convertToLocalTime = (userHour) => { const dt = new Date(); dt.setUTCHours(userHour); // Set the hours using the UTC function return dt.getHours(); // Get the hours using the local time function }; console.log(convertToLocalTime(4));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM