首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取过去几天的名称(例如:7天前、8天前...)

获取过去几天的名称(例如:7天前、8天前...)
EN

Stack Overflow用户
提问于 2013-04-08 10:56:04
回答 1查看 109关注 0票数 0

我在找过去几天的名字。我正在使用这个脚本成功地获取过去7天的名称,但是,如果我增加过去的天数,例如7天前,8天前或更多,它不起作用。

代码语言:javascript
复制
var dayOfWeek = new Array();  

dayOfWeek[0] = "Sun";  
dayOfWeek[1] = "Mon";  
dayOfWeek[2] = "Tue";  
dayOfWeek[3] = "Wed";  
dayOfWeek[4] = "Thu";  
dayOfWeek[5] = "Fri";  
dayOfWeek[6] = "Sat";  

var myDate = new Date();
myDate.setDate(myDate.getDate());
var myDate1 = new Date();
myDate1.setDate(myDate1.getDate() - 1);
var myDate2 = new Date();
myDate2.setDate(myDate2.getDate() - 2);
var myDate3 = new Date();
myDate3.setDate(myDate3.getDate() - 3);
var myDate4 = new Date();
myDate4.setDate(myDate4.getDate() - 4);
var myDate5 = new Date();
myDate5.setDate(myDate5.getDate() - 5);
var myDate6 = new Date();
myDate6.setDate(myDate6.getDate() - 6);

var on1 = dayOfWeek[myDate.getDay()];
var on2 = dayOfWeek[myDate1.getDay()];
var on3 = dayOfWeek[myDate2.getDay()];
var on4 = dayOfWeek[myDate3.getDay()];
var on5 = dayOfWeek[myDate4.getDay()];
var on6 = dayOfWeek[myDate5.getDay()];

document.write(on5);

这样做的正确方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-08 11:01:12

如果我没理解错的话,您正在尝试做一些类似的事情(假设今天是星期三):

  • 2天前是星期一
  • 5天前是星期五
  • 8天前是星期二

如果这是正确的,那么这应该是正确的:

代码语言:javascript
复制
function getDayOfWeekAgo(daysAgo) {
    var today = new Date().getDay(),
        days = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
    today = (today+daysAgo*6)%7; // adding 6 per day is the same as subtracting one
                              // due to the modulo, just without the complications
                              // that negative numbers would bring
    return days[today];
}

或者,更有效地:

代码语言:javascript
复制
window.getDayOfWeekAgo = (function() {
    var today = new Date().getDay(),
        days = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
    return function(daysAgo) {return days[(today+daysAgo*6)%7];}
})();
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15870561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档