У меня есть часть сценария, который вычисляет дни оставшихся на событие:Javascript Unix Epoch Time Странность
var currTime = Math.round(new Date().getTime()/1000.0);
var dispDate = event.find('UnixEpoch').text();
var diffDate = (dispDate - currTime)/86400;
var dateRound = Math.round(diffDate) - 30;
Первая строка получает текущее время Unix Epoch и сбривает миллисекунду. Вторая строка получает дату будущего события из XML-фида. Если я поместил оба раза в калькулятор Epoch онлайн, я получаю правильную дату для currTime и dispDate. Но когда я делю их до дней (третья строка), конечный результат отключается более чем на 30 дней, и я должен использовать последнюю строку для получения правильного количества дней.
Теперь это довольно странно. Но есть что-то еще, что я не могу понять. Раньше это было на 31 день, и теперь это неправильно, поэтому я изменил скрипт на 30 дней, что правильно.
Может ли кто-нибудь указать, что я делаю неправильно? Я не могу, чтобы жизнь меня определяла, почему это происходит, и я бы предпочел не менять ее.
http://xkcd.com/376/ :) – Macke