我之前使用过这段代码:
<script type="text/javascript" language="JavaScript">
function y2k(number) { return (number < 1000) ? number + 1900 : number; }
function getWeek(year,month,day) {
var when = new Date(year,month,day);
var newYear = new Date(year,0,1);
var offset = 7 + 1 - newYear.getDay();
if (offset == 8) offset = 1;
var daynum = ((Date.UTC(y2k(year),when.getMonth(),when.getDate(),0,0,0) - Date.UTC(y2k(year),0,1,0,0,0)) /1000/60/60/24) + 1;
var weeknum = Math.floor((daynum-offset+7)/7);
if (weeknum == 0) {
year--;
var prevNewYear = new Date(year,0,1);
var prevOffset = 7 + 1 - prevNewYear.getDay();
if (prevOffset == 2 || prevOffset == 8) weeknum = 53; else weeknum = 52;
}
return weeknum;
}
var now = new Date();
alert('Week number = ' + getWeek(y2k(now.getYear()),now.getMonth(),now.getDate()));
</script>
它非常简单,getWeek() 函数获取年、月和日,并返回周数。
演示
希望如你所愿。
祝你好运!