Javascript有没有办法每周更新一次日期?
例如:我有一个每周二更改的每周菜单。所以今天的标题是“2013 年 6 月 18 日的菜单”,但只要下周二在 25 日到来,我希望菜单自动更新为“2013 年 6 月 25 日的菜单”。
这可能吗?
Javascript有没有办法每周更新一次日期?
例如:我有一个每周二更改的每周菜单。所以今天的标题是“2013 年 6 月 18 日的菜单”,但只要下周二在 25 日到来,我希望菜单自动更新为“2013 年 6 月 25 日的菜单”。
这可能吗?
var monthname=new Array('January','February','March','April',
'May','June','July','August','September',
'October','November','December');
var day = new Date();
while (day.getDay() != 2) day = new Date(day.valueOf()-86400000);
var suffix;
switch (day.getDate() % 10) {
case 1 : suffix = 'st';
case 2 : suffix = 'nd';
case 3 : suffix = 'rd';
default : suffix = 'th';
}
alert('Menu for ' + day.getDate() + suffix + ' '
+ monthname[day.getMonth()] + ' ' + day.getFullYear());
请注意,JS 具有相当烦人的 January = 0, February = 1.... 功能。
道歉 - 我将在我的上一篇文章中将你送到无限循环 - 所以这已得到纠正,并且也有你在问题中概述的格式。
这是不循环的方法。
var d = new Date();
d.setTime(d.getTime() + (86400000 * (2 - (d.getDay() > 1 ?
d.getDay() : d.getDay() + 7))));
d
永远是过去的星期二或今天。
您想getDay()
在对象上使用该方法,该方法Date
以整数形式返回星期几(0 = 星期日,1 = 星期一,... 6 = 星期六)
function mostRecentTuesday()
{
var date = new Date();
// 2 == tuesday
while(date.getDay() != 2)
{
// rewind a day
date.setDate(date.getDate() - 1);
}
return date;
}
如果今天是星期二,您可以签入 javascript,然后当它是时,只需将某些内容的值更新为当前日期,检查 javascript 中的日期函数
http://www.w3schools.com/jsref/jsref_obj_date.asp
但你会使用
var tuesday = new Date().getDay();
if (tuesday === 2){
// do somehting
}
不要把我固定在第二个,不是 100% 确定那是否是星期二,但是 var 星期二会返回一个 0-6 的整数,不确定它是星期天还是星期一开始