Помогите составить скрипт вывода даты текущей недели

angella
На сайте с 14.04.2012
Offline
118
551

Вобщем, проблема вот в чем. Нужно чтобы выводилась дата типа неделя 5 января - 12 января Есть уже скрипт вывода текущей даты дня, вот он, может кому-то тоже понадобится. Подскажите пожалуйста, как его переделать на вывод даты недели.

<mce:script language="javascript" type="text/javascript"><!--

var d = new Date();

var day=new Array("Воскресенье","Понедельник","Вторник",

"Среду","Четверг","Пятницу","Субботу");

var month=new Array("января","февраля","марта","апреля","мая","июня",

"июля","августа","сентября","октября","ноября","декабря");

document.write(day[d.getDay()]+" " +d.getDate()+ " " + month[d.getMonth()]

+ " " + d.getFullYear() + " г.");

// --></mce:script>

ZoomY
На сайте с 07.11.2008
Offline
165
#1

Используйте оператор if, отталкиваясь от массива day. Если день=четверг, то отнять три дня для a и прибавить три для b, если пятница - то отнять четыре и прибавить два, и так далее. Затем проделайте то же самое с текущей датой.

Возможно, не совсем изящно, но если мы уже говорим об изяществе - то не в РНР это стоит делать? Даты у юзеров разные, лучше от времени сервера отталкиваться.

Размещу ваши статьи на сайтах с тИЦ до 1400 по 5$ (/ru/forum/846111) Сейчас многие ищут хостинг за пределами России. Ukrnames - один из лучших вариантов: (http://ukrnames.com/?ref_id=114) и лидер рынка, и привычно, и по-русски, и вне юрисдикции РФ.
angella
На сайте с 14.04.2012
Offline
118
#2

вот нашла скрипт который выводит неделю, но только начиная с текушей даты.

<script language="JavaScript">

function formatDate(date) {

var mymonth = date.getMonth()+1;

var myweekday = date.getDate();

return (mymonth + "/" + myweekday);

}

function printWeek() {

var now = new Date();

var nowDayOfWeek = now.getDay();

var nowDay = now.getDate();

var nowMonth = now.getMonth();

var nowYear = now.getYear();

nowYear += (nowYear < 2000) ? 1900 : 0;

var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);

var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));

document.write("Текущая неделя: " + formatDate(weekStartDate) + " - " + formatDate(weekEndDate) + " " + d.getFullYear() + " г.");

}

// End -->

</script>

<script>

printWeek();

</script>

Очень странно, что нету нигде скриптов вывода текущей календарной недели, хотя на многих сайтах видела именно такое решение.

DiAksID
На сайте с 02.08.2008
Offline
236
#3
angella:
... Очень странно, что нету нигде скриптов вывода текущей календарной недели, хотя на многих сайтах видела именно такое решение.

Momentjs, локализация тупо через подгрузку доп. скрипта с языком. пакет здоровый (сжатый 20+ Кб под гзипом 9+) но делает более чем дофига:


moment().week(); // Number
show must go on !!!...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий