JS計算日期時間

計算自然月、指定自然月某一天、獲取前一天和后一天、判斷閏年、月初、月末最后一天日期,代碼如下:

//時間格式化

functionFormatData(Data){

varnow=Data;

varyear=now.getFullYear();//年

varmonth=now.getMonth() +1;//月

varday=now.getDate();//日

varclock=year+"-";

if(month<10)

clock+="0";

clock+=month+"-";

if(day<10)

clock+="0";

clock+=day;

return(clock);

}

/**

* 獲取上一個月月初

*

* @date 格式為yyyy-mm-dd的日期,如:2014-01-25

*/

functiongetEarlyDay(date) {

vararr=date.split('-');

varyear=arr[0];//獲取當前日期的年份

varmonth=arr[1];//獲取當前日期的月份

varday=arr[2];//獲取當前日期的日

vardays=newDate(year,month,0);

days=days.getDate();//獲取當前日期中月的天數

varyear2=year;

varmonth2=parseInt(month) -1;

if(month2==0) {//如果是1月份,則取上一年的12月份

year2=parseInt(year2) -1;

month2=12;

}

varday2=day;

vardays2=newDate(year2,month2,0);

days2=days2.getDate();

if(day2>days2) {//如果原來日期大于上一月的日期,則取當月的最大日期。比如3月的30日,在2月中沒有30

day2=days2;

}

if(month2<10) {

month2='0'+month2;//月份填補成2位。

}

varEarly=year2+'-'+month2+'-'+"01";

returnEarly;

}

/**

* 求月末

*

* @date 格式為yyyy-mm-dd的日期,如:2014-01-25

*/

functiongetMonthEndDay(date) {

vararr=date.split('-');

varyear=arr[0];//獲取當前日期的年份

varmonth=arr[1];//獲取當前日期的月份

varday=arr[2];//獲取當前日期的日

vardays=newDate(year,month,0);

days=days.getDate();//獲取當前日期中月的天數

varyear2=year;

varmonth2=parseInt(month) -1;

if(month2==0) {//如果是1月份,則取上一年的12月份

year2=parseInt(year2) -1;

month2=12;

}

varday2=day;

vardays2=newDate(year2,month2,0);

days2=days2.getDate();

if(day2>days2) {//如果原來日期大于上一月的日期,則取當月的最大日期。比如3月的30日,在2月中沒有30

day2=days2;

}

if(month2<10) {

month2='0'+month2;//月份填補成2位。

}

//讀取日期自動回減一

if(month2==4||month2==6||month2==9||month2==11){

day2=30

}elseif(month2==2){

if(isLeapYear(year)){

day=29;

}else{

day2=28;

}

}else{

day2=31;

}

varEarly=year2+'-'+month2+'-'+day2;

returnEarly;

}

//JS判斷閏年代碼

functionisLeapYear(Year) {

????????if(((Year%4)==0) && ((Year%100)!=0) || ((Year%400)==0)) {

????????????????return(true);

????????}else{

????????????????return(false);

?????????}

}

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • [Js獲取當前日期時間及其它操作] 日期時間腳本庫方法列表 js代碼://--------------------...
    JS_swh閱讀 481評論 0 3
  • var regexEnum = { intege : "^-?[1-9]\\d*$", // 整數 intege1...
    a_foo閱讀 1,234評論 0 4
  • 縱披上才華的外衣,若沒有德行和正氣,還是一朵沒有筋骨的豆腐渣。 寫得出 “ 最是那一低頭的溫柔,像一朵水蓮花不勝涼...
    橫渡太平洋的魚閱讀 2,169評論 30 23
  • 2017.8.13 上海松江 我怎么如此幸運 1.我怎么如此幸運?如果沒有昨天的能量低弱,身體的反應,就不會感受到...
    吳桂儀閱讀 581評論 0 4
  • 女兒讀小學三年級,周五下午,她們三點鐘放學,放假。小學離村里有兩三里路,要沿著國道走上一段,車輛很多,因此,每到這...
    別山舉水閱讀 2,119評論 83 92