#javascript #momentjs #moment-timezone
Вопрос:
У меня возникла проблема, связанная с моментом, когда у меня есть следующая дата «27.09.2010 00:00:00», которая уже находится в часовом поясе UTC. Однако, когда я использую следующую функцию
const date = moment(someDate, 'MM/DD/YYYY HH:mm:ss').valueOf();
Я получаю 1632718800000 в качестве значения метки времени. Но когда я выполняю обратный процесс, я получаю ’10/27/2021 05:00:00 »
Как я могу избежать MomentJS для преобразования моей даты в UTC по умолчанию?
Ответ №1:
Вы можете использовать момент(x).локальный()
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>