Мне нужен следующий поток:
var a = new Date(1337324400000, 'Europe/Amsterdam'); //+2h
console.log(a); // for example 12:00 Mon ...
a.setTimeZone('Europe/Kiev'); //+3h
console.log(a); // 13:00 Mon ...
Есть ли такая возможность в nodejs utils api?
Мне нужен следующий поток:
var a = new Date(1337324400000, 'Europe/Amsterdam'); //+2h
console.log(a); // for example 12:00 Mon ...
a.setTimeZone('Europe/Kiev'); //+3h
console.log(a); // 13:00 Mon ...
Есть ли такая возможность в nodejs utils api?
Вы можете использовать node-time, как показано ниже:
var time = require('time');
var a = new time.Date(1337324400000);
a.setTimezone('Europe/Amsterdam');
console.log(a.toString()); // Fri May 18 2012 09:00:00 GMT+0200 (CEST)
a.setTimezone('Europe/Kiev');
console.log(a.toString()); // Fri May 18 2012 10:00:00 GMT+0300 (EEST)
Теперь у Moment.js есть Часовой пояс момента
Установить
npm install --save moment-timezone
Использование
var Moment = require('moment-timezone');
Moment().tz('America/Los_Angeles').format();
UPDATE: теперь есть еще один:) https://github.com/mde/timezone-js
Замена с учетом часового пояса для дат JavaScript JavaScript. Объект timezoneJS.Date API-совместим с датой JS, с те же методы getter и setter - он должен отлично работать в любом коде, который работает с нормальными датами JavaScript.
нет нет
Но вы можете использовать moment.js, чтобы упростить http://momentjs.com/docs/
Вам все равно нужно знать каждое смещение, поэтому вам понадобится сопоставление, например {"Europe/Amsterdam":2,"Europe/Kiev":3}
См. пакет часовых поясов в npm. У этого есть все необходимое, встроенное и чистое JS, и, по-видимому, это лучшая библиотека обработки часового пояса.
https://www.npmjs.com/package/timezone
http://bigeasy.github.io/timezone/
var tz = require('timezone/loaded'),
equal = require('assert').equal,
utc;
// Get POSIX time in UTC.
utc = tz('2012-01-01');
// Convert UTC time to local time in a localize language.
equal(tz(utc, '%c', 'fr_FR', 'America/Montreal'),
'sam. 31 déc. 2011 19:00:00 EST');
- Часовой пояс - это библиотека MicroJS в чистом JavaScript без зависимостей, которая обеспечивает математическую дату и время форматирования дат времени.
- Часовой пояс использует базу данных IANA для определения правильного времени настенных часов в любой точке мира в любое время с начала стандартного времени.
- Форматы дат с часовым поясом с полной реализацией форматов strftime, включая расширения даты GNU.
- Часовой пояс представляет время в POSIX и локальном времени с использованием строк даты RFC 3999.
- Часовой пояс - это полнофункциональная библиотека времени, основанная на стандартах, в чистом JavaScript для менее 3 тыс. minified и gzipped.
Использовать moment-timezone.js, это лучший вариант для синтаксического анализа, проверки и изменения времени в разных часовых поясах.