獲取指定日期的前一天日期

2022-03-26 16:34:34 字數 2298 閱讀 2820

看部落格的時候,看到一篇文章,是獲取指定日期的前一天日期,所以自己也寫了乙個方法,如下:

1/*2

* 功 能:根據年月得到指定月份的天數

3* 參 數:nyear 年

4* nmonth 月

5* 返 回 值:最大天數

6* 創 建 人:maojw78

*/9function

getdaysofmonth(nyear, nmonth)

13var

ndaycount;

1415

switch

(nmonth)

3940

return

ndaycount;41}

4243

/*44

* 功 能:判斷輸入的字串是否為正確的日期格式

45* 參 數:sdate-日期

46* 返 回 值:true - 正確,否則 false

47* 創 建 人:maojw

4849

*/50

function

isdatelegal(sdate)

5556

var reg = /^(\d)(-|\/)(\d)\2(\d)$/;

57var r =sdate.match(reg);

58if (r == null

) 61

62var adate = sdate.split("-");

6364

varnyear, nmonth, nday;

65 nyear = parseint(adate[0]);

66 nmonth = parseint(adate[1]);

67 nday = parseint(adate[2]);

6869

if (nyear < 1900 || nyear > 2099)

72if (nmonth < 1 || nmonth > 12)

7576

var ndaysofmonth =getdaysofmonth(nyear, nmonth);

77if (nday < 1 || nday >ndaysofmonth)

8081

return

true;82

}8384/*

85* 功 能:獲取指定日期的前一天日期

86* 參 數:

87* 返 回 值:

88* 創 建 人:毛軍偉

8990

*/91

function

getyestoday(sdate, serrormessage)

9697

if (sdate == undefined || sdate == "")

100101

if (!isdatelegal(sdate))

104105

var adate = sdate.split("-");

106107

varnyear, nmonth, nday;

108 nyear = parseint(adate[0]);

109 nmonth = parseint(adate[1]);

110 nday = parseint(adate[2]);

111112

//初始化月份(第乙個0,佔位作用,讓下標和月份對應)

113var amonth = new array([0], [31], [28], [31], [30], [31], [30], [31], [31], [30], [31], [30], [31]);

114115

///判斷是否是閏年

116if (nyear % 4 == 0 && nyear % 100 != 0)

119//

/判斷日期是否是第一天

120if (nday - 1 == 0) else

128 nday =amonth[nmonth];

129 } else

132133

///月份小於10,前面加0

134if (nmonth < 10)

137//

/日期小於10,前面加0

138if (nday < 10)

141142

return nyear + "-" + nmonth + "-" +nday;

143 }

view code

AIX UNIX獲取前一天日期

bin sh today date y m d todayhyphen date y m d year date y month date m day date d getyesterday 直接呼叫方法,不用返回值,在方法內設定多個變數,在外面可以用到。多次呼叫,year month day的值會...

獲取指定日期的後一天或前一天的日期

思想 1.獲取乙個日曆的例項 2.將指定的時間格式化成date型別 3.獲取該date的int型別的時間天數day 4.將day 或者 1 5.根據計算後的day轉化成date型別 6.轉化為易懂的格式 獲得指定日期的後一天 引數無論是y m d 還是y m d h m s 返回值都只有yyyy m...

批處理獲取前一天日期

echo off color 0a rem 獲取昨天日期 set ye date 0,4 set mo date 5,2 set da date 8,2 set dg 1 set a vy1 ye 400 set a vy2 ye 4 set a vy3 ye 100 if vy1 0 set va...