js獲取指定日期周數(shù)以及星期幾的小例子
更新時間:2014年06月27日 17:39:18 投稿:whsnow
根據(jù)某年某周獲取一周的日期。如開始日期規(guī)定為星期四到下一周的星期五為一周,需要的朋友可以參考下
JS獲取日期時遇到如下需求,根據(jù)某年某周獲取一周的日期。如開始日期規(guī)定為星期四到下一周的星期五為一周。
代碼如下:
function getNowFormatDate(theDate)
{
var day = theDate;
var Year = 0;
var Month = 0;
var Day = 0;
var CurrentDate = "";
// 初始化時間
Year= day.getFullYear();// ie火狐下都可以
Month= day.getMonth()+1;
Day = day.getDate();
CurrentDate += Year + "-";
if (Month >= 10 )
{
CurrentDate += Month + "-";
}
else
{
CurrentDate += "0" + Month + "-";
}
if (Day >= 10 )
{
CurrentDate += Day ;
}
else
{
CurrentDate += "0" + Day ;
}
return CurrentDate;
}
function isInOneYear(_year,_week){
if(_year == null || _year == '' || _week == null || _week == ''){
return true;
}
var theYear = getXDate(_year,_week,4).getFullYear();
if(theYear != _year){
return false;
}
return true;
}
// 獲取日期范圍顯示
function getDateRange(_year,_week){
var beginDate;
var endDate;
if(_year == null || _year == '' || _week == null || _week == ''){
return "";
}
beginDate = getXDate(_year,_week,4);
endDate = getXDate(_year,(_week - 0 + 1),5);
return getNowFormatDate(beginDate) + " 至 "+ getNowFormatDate(endDate);
}
// 這個方法將取得某年(year)第幾周(weeks)的星期幾(weekDay)的日期
function getXDate(year,weeks,weekDay){
// 用指定的年構(gòu)造一個日期對象,并將日期設(shè)置成這個年的1月1日
// 因為計算機中的月份是從0開始的,所以有如下的構(gòu)造方法
var date = new Date(year,"0","1");
// 取得這個日期對象 date 的長整形時間 time
var time = date.getTime();
// 將這個長整形時間加上第N周的時間偏移
// 因為第一周就是當(dāng)前周,所以有:weeks-1,以此類推
// 7*24*3600000 是一星期的時間毫秒數(shù),(JS中的日期精確到毫秒)
time+=(weeks-1)*7*24*3600000;
// 為日期對象 date 重新設(shè)置成時間 time
date.setTime(time);
return getNextDate(date,weekDay);
}
// 這個方法將取得 某日期(nowDate) 所在周的星期幾(weekDay)的日期
function getNextDate(nowDate,weekDay){
// 0是星期日,1是星期一,...
weekDay%=7;
var day = nowDate.getDay();
var time = nowDate.getTime();
var sub = weekDay-day;
if(sub <= 0){
sub += 7;
}
time+=sub*24*3600000;
nowDate.setTime(time);
return nowDate;
}
如獲取2016年第一周日期,從周四開始算。則第一周的日期范圍為2016-01-07 至 2016-01-15
在提供一段調(diào)用的參考代碼:
//日期處理
function dateRange(){
var _year = $("#_year").val();
var _week = $("#_week").val();
if(isInOneYear(_year,_week)){
var showDate = getDateRange(_year,_week);
$("#_dateRange_import").html(showDate);
} else{
alert(_year+"年無"+_week+"周,請重新選擇");
$("#_week").val("");
}
}
您可能感興趣的文章:
- JavaScript時間操作之年月日星期級聯(lián)操作
- JavaScript顯示當(dāng)然日期和時間即年月日星期和時間
- js獲取時間精確到秒(年月日)
- 時間戳轉(zhuǎn)換為時間 年月日時間的JS函數(shù)
- json格式的時間顯示為正常年月日的方法
- 用js實現(xiàn)每隔一秒刷新時間的實例(含年月日時分秒)
- js獲取當(dāng)前年月日-YYYYmmDD格式的實現(xiàn)代碼
- javascript實現(xiàn)日歷控件(年月日關(guān)閉按鈕)
- 純JS實現(xiàn)出生日期[年月日]下拉菜單效果
- js顯示當(dāng)前日期時間和星期幾
- JS簡單獲取當(dāng)前日期時間的方法(如:2017-03-29 11:41:10 星期四)
- JS實現(xiàn)處理時間,年月日,星期的公共方法示例
相關(guān)文章
javascript實現(xiàn)上傳圖片并預(yù)覽的效果實現(xiàn)代碼
圖片上傳預(yù)覽,就是在使用文件選擇框選擇了文件之后就可以在頁面上看見圖片的效果,關(guān)于這個效果我一直認(rèn)為是無法做到的2011-04-04
JavaScript使用readAsDataURL讀取圖像文件
這篇文章主要為大家詳細(xì)介紹了JavaScript使用readAsDataURL讀取圖像文件的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05
javascript 動態(tài)創(chuàng)建表格的2種方法總結(jié)
本文給大家總結(jié)了2種使用javascript動態(tài)創(chuàng)建表格的方法,非常簡單實用,小伙伴們自己對比下看看哪種更適合你呢,一般本人是使用第一種的。2015-03-03

