PDA

Просмотр полной версии : Вчерашняя дата


$mival
18.06.2010, 11:22
Привет всем!

Вроде была тема, что-то не нашёл

Нужно взять к примеру вчерашнюю дату
т.е. если сегодня 01.01.2010 то вчера 31.12.2009, достаточно геморно получается, много вариантов + високосный год.

А вообще не отказался бы от пакета для работа с датами, складывать / вычитать даты и тд

wvxvw
18.06.2010, 12:46
дата это просто число, отнимите 24 часа и получите "вчера".

$mival
18.06.2010, 13:54
дата это просто число, отнимите 24 часа и получите "вчера".

спасибо
я почему то был уверен что hours и прочее - ридонли :rolleyes:

Maxio
19.06.2010, 13:50
Есть ещё другая тема, и мне она кажется более правильной, ну каждому своё.
Универсальный метод для уменьшения-увеличения дат:
1) нужную дату получить в формате миллисекунд (с 1 января 1970 года или как там, эпоха Юникс, ё-маё))
2) изменить её на нужное количество секунд. Например, на сутки назад: -3600*24*1000
3) получить новый объект даты по результирующему количеству миллисекунд
4) опа, теперь можно от него брать день, месяц, час - всё будет автоматом корректно

var currDate = new Date();
var msecs = currDate.getTime();
msecs-=1000*3600*24;
var newDate = new Date(msecs);

udaaff
19.06.2010, 14:41
Есть ещё другая тема, и мне она кажется более правильной, ну каждому своё.
Об этом и шла речь.

Maxio
19.06.2010, 15:04
ну судя по тому, что он написал, что был уверен, что hours ридонли, он мог понять ответ wvxvw неверно. А так всё чётко :)