【问题标题】:MomentJS converts my date to UTC by defaultMomentJS 默认将我的日期转换为 UTC
【发布时间】:2021-09-28 01:39:00
【问题描述】:
我遇到了一个与 momentJS 相关的问题
我有以下日期 '09/27/2021 00:00:00',它已经在 UTC 时区。但是,当我使用以下功能时
const date = moment(someDate, 'MM/DD/YYYY HH:mm:ss').valueOf();
我得到 1632718800000 作为时间戳值。但是当我做相反的过程时,我得到 '10/27/2021 05:00:00 '
如何避免momentJS默认将我的日期转换为UTC?
【问题讨论】:
标签:
javascript
momentjs
moment-timezone
【解决方案1】:
您可以使用moment(x).local()
const someDate = '09/27/2021 00:00:00';
const date = moment(
someDate,
'MM/DD/YYYY HH:mm:ss'
);
// get timestamp
const timestamp = date.valueOf();
// revert datetime from timestamp
const dateFromTimeStamp = moment(timestamp);
console.log(dateFromTimeStamp.local().format('YYYY-MM-DD HH:mm:ss'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js" integrity="sha512-qTXRIMyZIFb8iQcfjXWCO8+M5Tbc38Qi5WzdPOYZHIlZpzBHG3L3by84BBBOiRGiEb7KKtAOAs5qYdUiZiQNNQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>