Получить завтрашний день с getDay Javascript - PullRequest
6 голосов
/ 14 февраля 2012

То, что я делаю, - это веб-сайт с прогнозом погоды, а мне нужны дни недели (т. Е. «Воскресенье», «понедельник» и т. Д.). Чтобы получить завтрашнюю дату, я просто помещаю «+ 1», как кто-то предложил в другом вопросе, но когда он подходит к субботе, он говорит «неопределено». Как мне сделать так, чтобы, когда дело дошло до субботы, + 1 зациклилось на воскресенье? Заранее спасибо!

var day=new Date();
var weekday=new Array(7);
weekday[0]="Sunday";
weekday[1]="Monday";
weekday[2]="Tuesday";
weekday[3]="Wednesday";
weekday[4]="Thursday";
weekday[5]="Friday";
weekday[6]="Saturday";

document.getElementById('tomorrow').innerHTML = weekday[day.getDay() + 1];
document.getElementById('twodays').innerHTML = weekday[day.getDay() + 2];
document.getElementById('threedays').innerHTML = weekday[day.getDay() + 3];

Ответы [ 2 ]

26 голосов
/ 14 февраля 2012

Чтобы добавить день к объекту Date в JavaScript, вы должны сделать:

var date =new Date();
//use the constructor to create by milliseconds
var tomorrow = new Date(date.getTime() + 24 * 60 * 60 * 1000);

Примечание, получите Дата .

Date.getDay возвращает число от 0 до 6 в зависимости от того, какой это день недели.

Так вы бы сделали:

var date =new Date();
var tomorrow = new Date(date.getTime() + 24 * 60 * 60 * 1000);
var twoDays = new Date(date.getTime() + 2 * 24 * 60 * 60 * 1000);
var threeDays  = new Date(date.getTime() + 3 * 24 * 60 * 60 * 1000);

document.getElementById('tomorrow').innerHTML = weekday[tomorrow.getDay()];
document.getElementById('twodays').innerHTML = weekday[twoDays.getDay()];
document.getElementById('threedays').innerHTML = weekday[threeDays.getDay()];

Редактировать: Исправление опечатки

9 голосов
/ 14 февраля 2012

Используйте (day.getDay() + i) % 7. Это будет возвращать результаты только между 0-6.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...