Для того чтобы узнать день недели определённой даты, не возникает особой сложности.
Например в PHP это можно сделать так
date("N"); // Порядковый номер дня недели в соответствии со стандартом ISO-8601 (добавлен в версии PHP 5.1.0). от 1 (понедельник) до 7 (воскресенье) date("L"); // Полное наименование дня недели. От Sunday до Saturday date("n"); // Порядковый номер дня недели. От 0 (воскресенье) до 6 (суббота)
подробнее можно прочитать в документации к функции
На JavaScript это же можно сделать так
var date = new Date(); date.getUTCDay(); // Возвращает текущий день недели согласно UTC (от 0 до 6)
Если же хочется написать велосипед, или просто интересно как это вычисляется. То можно это сделать двумя способами:
1) С помощью
2) С помощью не сложных вычислений:
month, day, year — номер месяца, день, год a = (14 – month) / 12 y = year – a m = month + 12 * a – 2 day_of_week = (7000 + (day + y + y / 4 – y / 100 + y / 400 + (31 * m) / 12)) MOD 7
где (/ — целочисленное деление, MOD — нахождение остатка)
В итоге получится число от 0 до 6.
0 — воскресенье, 6 — суббота
Все довольно таки просто.