Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Как правильно найти время? (https://javascript.ru/forum/project/54968-kak-pravilno-najjti-vremya.html)

VolodinAS 08.04.2015 12:53

Как правильно найти время?
 
Есть скрипт таймера по отсчетам времени до начала открытия или закрытия торговых сессий. Суть в том, что указаны времена по GMT 0 для различных городов. Вот их список:
Код:

        биржа                                открытие        закрытие        пояс

Тихоокеанская
        Веллингтон                        19:00                04:00                GMT+12
        Сидней                                21:00                06:00                GMT+10
Азиатская
        Токио                                23:00                08:00                GMT+9
        Гонконг, Сингапур                00:00                09:00                GMT+8
Европейская
        Франкфурт, Цюрих, Париж                06:00                15:00                GMT+2
        Лондон                                07:00                16:00                GMT+1
Американская
        Нью-Йорк                        12:00                21:00                GMT-4
        Чикаго                                13:00                22:00                GMT-5

Например, я нахожусь в Барнауле.
Как мне правильно отобразить часы-минуты-секунды до открытия/закрытия сессий для Барнаула? Как мне высчитать разницу? И что куда прибавить-отнять?

Aetae 09.04.2015 12:18

http://javascript.ru/Date

VolodinAS 09.04.2015 15:54

Цитата:

Сообщение от Aetae (Сообщение 365757)

я знаю материал. Мне необходимо логически как-то помочь рассудить, что куда пихнуть и что куда к GMT прибавить/отбавить, чтобы получить время открытия/закрытия в соответствии с тем временем, где нахожусь я

laimas 09.04.2015 20:06

А где дата?

Aetae 11.04.2015 11:01

Вот примитивный пример:
var dates = '	Веллингтон			19:00		04:00		GMT+12'.match(/[+-\d]+/g);
var date = new Date();

date.setUTCHours(dates[0] - dates[4], dates[1], 0);
var first = date.toTimeString();

date.setUTCHours(dates[2] - dates[4], dates[3], 0);
var second = date.toTimeString();

alert(first + '\n' + second)
Разбить на строчки сами сможете.


Часовой пояс GMT +3, время: 09:49.