Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.12.2014, 19:39
Аспирант
Отправить личное сообщение для ninzzo Посмотреть профиль Найти все сообщения от ninzzo
 
Регистрация: 21.05.2013
Сообщений: 42

дд.мм.гггг в unix ? хелп!
Привет!

1. Подскажите как перевести
формат дд.мм.гггг в unix

Есть 20.02.1976 как из нее получить unix ?

2. Как в js узнать текущее время в unix формате ?

На пхп без проблем это делаю,а вот в js уже уперся рогом)
Ответить с цитированием
  #2 (permalink)  
Старый 19.12.2014, 19:55
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

// текущее
var currentUnix = Date.now() / 1000|0;
// необходимая
var unix = Date.parse('20.02.1976'.replace(/(\d+)\.(\d+)\./, '$2-$1-')) / 1000|0;


Примеры выше не учитывают временные зоны, дата возвращается с нулевой зоной, то-есть UTC+0
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine

Последний раз редактировалось devote, 19.12.2014 в 20:00.
Ответить с цитированием
  #3 (permalink)  
Старый 20.12.2014, 00:38
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Сообщение от devote Посмотреть сообщение
дата возвращается с нулевой зоной, то-есть UTC+0
С чего бы это?
alert(Date.parse('January 1, 1970'));
Ответить с цитированием
  #4 (permalink)  
Старый 20.12.2014, 00:53
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Rise
С чего бы это?
а с того:
https://developer.mozilla.org/en-US/...cts/Date/parse
Цитата:
The Date.parse() method parses a string representation of a date, and returns the number of milliseconds since January 1, 1970, 00:00:00 UTC.
не забывай что из этой даты: 'January 1, 1970' Date.parse вычитает локальную временную зону, так как для Date.parse дата: 'January 1, 1970' считается локальной, потому что не указан явно временной сдвиг.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #5 (permalink)  
Старый 20.12.2014, 01:22
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

devote, значит дата возвращается не с нулевой зоной, а UTC-/+локальная временная зона.
Ответить с цитированием
  #6 (permalink)  
Старый 20.12.2014, 01:29
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Rise
значит дата возвращается не с нулевой зоной
возвращается с нулевой... просто парсер всегда приводит строку в UTC+0 вычитая указанную временную зону, например Date.parse('January 1, 1970 UTC'); вернет ноль, потому что мы явно ему указали что строка с временной зоной 0, тогда как строка January 1, 1970 без указания временного сдвига, равносильна "January 1, 1970 UTC+Локальный сдвиг"
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine

Последний раз редактировалось devote, 20.12.2014 в 01:31.
Ответить с цитированием
  #7 (permalink)  
Старый 20.12.2014, 01:35
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

devote, но ты ведь не указал, а заявил о нулевой)
Ответить с цитированием
  #8 (permalink)  
Старый 20.12.2014, 02:03
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Rise
а заявил о нулевой)
я не заявил а сказал что будет возвращать с нулевой зоной, что он и делает (приводит к нулевой зоне).. А уж в каком формате будет топикстартер туда совать строку это решать ему. А во вторых каждый JS прог, должен понимать как работает Date в браузерах.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Таймер обратного отсчета UNIX time TuxShot Общие вопросы Javascript 6 03.08.2014 13:36
Счетчик обратного времени (эпоха unix) skillful AJAX и COMET 0 07.07.2014 17:09
Хелп! Разделение аватар по гендерному признаку. Марго Мин Общие вопросы Javascript 0 15.01.2014 17:16
Хелп с встплывающим блоком Alexsender jQuery 0 06.12.2009 18:53
В IE java Script Error! Хелп! web64 Общие вопросы Javascript 5 04.09.2008 17:09