编辑JavaScript(明天的日期)
我试图编辑一些JavaScript代码,基本上显示明天的日期。但是,对于星期五和周末(星期五、星期六和星期日),应显示下一个星期一的日期 以下是我的代码:编辑JavaScript(明天的日期),javascript,html,Javascript,Html,我试图编辑一些JavaScript代码,基本上显示明天的日期。但是,对于星期五和周末(星期五、星期六和星期日),应显示下一个星期一的日期 以下是我的代码: var date = new Date(); // timezone date.setDate(date.getDate() + 1); // move to tomorrow date.setUTCHours(11,0,0,0); // set time using UTC(GMT) timezone document.getElemen
var date = new Date(); // timezone
date.setDate(date.getDate() + 1); // move to tomorrow
date.setUTCHours(11,0,0,0); // set time using UTC(GMT) timezone
document.getElementById("next-shipment").textContent = date.toLocaleString();
例如,假设今天是2015年11月4日,星期二。javascript代码应该以这种格式显示“2015年11月5日””-->。
周五、周六和周日,代码应显示:下周一的日期:2015年11月9日
代码应该全年运行。日期构造函数还有一个名为
getDay()
的函数,它返回一个介于0和6之间的整数(0=星期日,6=星期六)。您可以使用它来检测星期五(0)、星期六(6)、星期日(0)并忽略它们
如果是周末,这里有一个演示提醒您:
var myDate = new Date();
myDate.setFullYear(2015);
myDate.setMonth(11);
myDate.setDate(6);
if(myDate.getDate() == 5 || myDate.getDay() == 6 || myDate.getDay() == 0) alert('Weekend!');
document.write(myDate);
要找到第二天,请将日期传递给构造函数一次&它将为您完成工作。但是,您需要创建一个数组,以您想要的方式格式化它
JS:
var monthNames = ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
];
var tomDate = new Date(new Date().getTime() + 24 * 60 * 60 * 1000);
var day = tomDate.getDate();
var month = monthNames[tomDate.getMonth()];
var year = tomDate.getFullYear()
var d = new Date();
var n = d.getDay();
if(n == 5){
var fromFri = n + 4;
document.write("<b>" + month + " " + fromFri + ", " + year + "</b>");
}else if (n == 6){
var fromSat = n + 3;
document.write("<b>" + month + " " + fromSat + ", " + year + "</b>");
}else if (n == 0) {
var fromSun = n + 2;
document.write("<b>" + month + " " + fromSun + ", " + year + "</b>");
}else{
document.write("<b>" + month + " " + day + ", " + year + "</b>");
}
var monthNames=[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”,
“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”
];
var tomDate=new Date(new Date().getTime()+24*60*60*1000);
var day=tomDate.getDate();
var month=monthNames[tomDate.getMonth()];
var year=tomDate.getFullYear()
var d=新日期();
var n=d.getDay();
如果(n==5){
var fromFri=n+4;
写(“+月+”+从周五开始+”,“+年+”);
}else如果(n==6){
var fromSat=n+3;
写(“+month+”+fromSat+”,“+year+”);
}else如果(n==0){
var fromSun=n+2;
写(“+月+”+从太阳+”,“+年+”);
}否则{
写(“+月+”+日+”,“+年+”);
}
更新:尝试以下操作:
var today=new Date();//时区
document.getElementById(“结果”).innerHTML=“
今天的第二天是:“+FormatDate(GetNextDay(今天));
函数GetNextDay(日期){
date.setDate(date.getDate()+1);//移动到第二天。
开关(date.getDay()){
案例0://星期日
案例6://星期六
日期=GetNextDay(日期);
}
返回日期;
}
函数格式日期(日期){
风险值月份=[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”];
返回月份[date.getMonth()]+“”+date.getDate()+”,“+date.getFullYear();
}
函数TestDate(){
var date=新日期(document.getElementById(“TestDate”).value);
document.getElementById(“结果”).innerHTML+=“
选择的第二天是:“+FormatDate(GetNextDay(date));
}
如何将日期显示为“2015年11月5日”,而不是2015年11月6日上午6:00:00?此外,对于每个星期五、星期六和星期日,日期必须显示下一个星期一的日期。顺便说一下,我的时区是美国东部标准时间(EDT),它已经做到了。每周五、周六和周日显示周一。你可以测试一下。我将更新我的答案,以您想要的格式显示日期。我添加了一个格式化功能。你还想显示当地时间,是吗?如果没有,只需删除结尾处的+date.toLocaleTimeString()
。就在这一分钟,2015年11月4日太平洋时间17:17,使用“运行代码片段”向我显示今天的第二天是:201520153:00:00 AM
(错误的日期-6而不是5-并且格式一起运行)@StephenP这是因为OP有一行date.setUTCHours(11,0,0,0)代码>在他的代码中。我以为他需要它,所以我把它放在那里了。现在在阅读了他的评论之后,他似乎不在乎时间,所以我删除了它。我只是检查了一下,看起来代码完成了任务。但是代码会在每个星期五、星期六和星期天显示星期一的日期吗?我为你修正了,如果是周末,它会提醒你,如果不是,它会打印日期!看起来很酷!有没有办法把这两个代码整合成一个?第二个代码给出了正确的日期,但是如果它可以显示星期五、星期六和星期天的星期一日期,那就太棒了。如果代码可以在没有警报的情况下显示每个星期五、星期六和星期天的星期一日期,那就最好了。因为我会把这个代码放在我的网站上,所以警告信息是不必要的。耶,我想我是为你得到它的!一开始我很困惑,因为我们为明天设置了今天的日期+1。当我去设置使用“明天日期”的条件语句时,我知道我的数学xP没有那么差