2016-11-21 63 views

回答

0

尝试https://jsfiddle.net/z6zum0hk/

var date = new Date(); 
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1); 
var days = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]; 
var weeksPassed = Math.floor(date.getDate()/7); 
if(date.getDay() >= firstDay.getDay()){ 
    alert((weeksPassed+1) + " " + days[date.getDay()] + " of month") 
}else{ 
    alert((weeksPassed) + " "+ days[date.getDay()] + " of month") 
} 

解释:

日期将会给你一个月的日期,以便通过,你可以找到多少个星期过去了 日会给你第0天至6周日到周六 那么如果你当前的日子是在一天的开始月份之前,那么当前日子就是过去一周的其他日子,否则它的周过去了+ 1天

+1

可读性很小,通过将date.getDate()放入(date.getDate()+ 6)中可以失去“if”子句,并且永远不必添加一个到weeksPassed。 –

+0

谢谢,这就是我想要的,现在的问题是我想在下个月的第三个星期一得到日期,我很抱歉,但我是JS的新手,并没有这些计算的想法,你能帮忙吗? –

+0

@SameenJavid检查此https://jsfiddle.net/z6zum0hk/1/ –

相关问题