Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.02.2015, 01:20
Новичок на форуме
Отправить личное сообщение для mkone112 Посмотреть профиль Найти все сообщения от mkone112
 
Регистрация: 18.09.2014
Сообщений: 5

Пара вопросов про new Date().
0. Почему document выводит на страницу время в местной временной зоне, а в консоль время попадает в UTC00:00 ?
Код:
var time = new Date();
document.getElementById('time0').innerHTML='Текущее время: ' + time;
console.log(time);
Песочница: http://learn.javascript.ru/play/MmaYs

1. Как правильно отображать дату и время в другой часовой зоне?
Например имеется дата:

Fri May 16 2200 04:11:33 GMT+0300

Необходимо преобразовать ее к следующему виду:

Fri May 16 2200 08:11:33 GMT+0700

Я пробовал с помощью .getTimezoneOffset() отнимать или прибавлять разницу. Но выходит так:

http://learn.javascript.ru/play/nQT7gc

Т. е. время меняется а временная зона разумеется та-же.

Я решил это преобразованием даты в строку и заменой +0300 на +0700. Или вообще "пересборкой даты" т.е. получилучение всех компоненты даты и опять-же дальнейшей работой с ней как со строкой. Однако мне кажется что это костыль/велосипед. Подскажите пожайлуста более корректное решение если оно есть. Заранее спасибо.

P.S. : Браузер Firefox 35.0.1 .
Ответить с цитированием
  #2 (permalink)  
Старый 06.02.2015, 02:51
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,489

В последних версиях браузеров появился Intl.DateTimeFormat, через него можно задавать региональные настройки вывода даты. А в старых только костыли. Велосипеды впрочем давно написаны, стоит лишь погуглить.

P.S. Имхо из Intl вышло адское кривое дерьмо, и ручками всё равно надёжнее.
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 07.02.2015, 00:37
Новичок на форуме
Отправить личное сообщение для mkone112 Посмотреть профиль Найти все сообщения от mkone112
 
Регистрация: 18.09.2014
Сообщений: 5

А не подскажите насчет первого вопроса? Почему в консоль время пишется в utc00:00?
Ответить с цитированием
  #4 (permalink)  
Старый 07.02.2015, 01:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,489

Почему? Так захотелось разработчикам браузеров.
Хотите в другом виде? Приводите перед выводом в консоль к нужной строке.
__________________
29375, 35
Ответить с цитированием
  #5 (permalink)  
Старый 13.02.2015, 00:48
Новичок на форуме
Отправить личное сообщение для mkone112 Посмотреть профиль Найти все сообщения от mkone112
 
Регистрация: 18.09.2014
Сообщений: 5

Большое спасибо!!!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Время,не правильное отображение скриптов Visual Общие вопросы Javascript 0 29.10.2013 19:12
Пара простых вопросов от чайника xrsx Элементы интерфейса 17 28.02.2011 11:44
Несколько вопросов про jquery от новичка Delfi jQuery 3 24.11.2010 10:55
Пара вопросов по onClick yngwie19 Общие вопросы Javascript 3 17.08.2010 08:44
Пара вопросов 13rust jQuery 2 05.01.2010 16:22