Игнорирование часовых поясов при создании даты в javascript/momentjs
Я создаю график для чего-то на восточном побережье, и мне нужно создать дату, которая всегда возвращает объект даты/метку времени за это время.
Итак, если я открою страницу в Париже в 18:00, "new myDate()"
должен вернуться в 12:00.
Любые предложения о том, как я могу это сделать с увядающим моментом JS или просто с Javascript? Конечным результатом должен быть объект Date javascript.
Ответы
Ответ 1
Вы можете сделать это с помощью функции time.js, используя moment.utc()
.
http://momentjs.com/docs/#/parsing/utc/
moment([2011, 10, 8, 5]).format(); // different output based on timezone
moment.utc([2011, 10, 8, 5]).format(); // same output for all timezones
Способ moment.utc
работает, устанавливая внутренний флаг для использования getUTCMinutes
вместо getMinutes
, таким образом, вывод во всех тайм-узлах одинаковый.
Ответ 2
Если вы хотите, чтобы ваш часовой пояс полностью игнорировался, вы можете использовать следующий подход:
var firstDayStr = '29 January 2014';
var startAtTime = '10:01:02 AM';
var localFormat = 'YYYY-MM-DD[T]HH:mm:ss';
var m = moment(firstDayStr + ' ' + startAtTime).format(localFormat);
console.log(m);
Вывод:
2014-01-29T10:01:02