js计算两个日期之间相差多少年多少月多少天.doc

js计算两个日期之间相差多少年多少月多少天.doc

ID:57688612

大小:15.50 KB

页数:2页

时间:2020-09-01

js计算两个日期之间相差多少年多少月多少天.doc_第1页
js计算两个日期之间相差多少年多少月多少天.doc_第2页
资源描述:

《js计算两个日期之间相差多少年多少月多少天.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、functiondateDiff(d1,d2){//计算两个日期之间相差多少年多少月多少天d1=newDate(d1.replace(/-/g,'/'));//开始时间d2=newDate(d2.replace(/-/g,'/'));//结束时间varobj={},M1=d1.getMonth()+1,D1=d1.getDate(),M2=d2.getMonth()+1,D2=d2.getDate();obj.Y=d2.getFullYear()-d1.getFullYear()+(M1*100+D1>M2*100+D2?-1:0);//相差年份计算obj.M

2、=(d2.getFullYear()-d1.getFullYear())*12+M2-M1+(D1>D2?-1:0);if(D2>D1){//结束时间的日期大于开始时间的日期,则相差天数为结束日期天数减开始日期天数加1obj.D=D2-D1+1;if(M2==1

3、

4、M2==3

5、

6、M2==5

7、

8、M2==7

9、

10、M2==8

11、

12、M2==10

13、

14、M2==12){setDay(obj,"31");}elseif(M2==4

15、

16、M2==6

17、

18、M2==9

19、

20、M2==11){setDay(obj,"30");}elseif(M2==2){if(d2.getFullYear()%

21、4==0){setDay(obj,"29");}else{setDay(obj,"28");}}}elseif(D2==D1){//结束时间的日期等于开始时间的日期,则相差天数为1obj.D=1;}else{//结束时间的日期小于于开始时间的日期,则相差天数为开始时间所在月的天数减去开始时间日期加上结束时间的日期if(M1==1

22、

23、M1==3

24、

25、M1==5

26、

27、M1==7

28、

29、M1==8

30、

31、M1==10

32、

33、M1==12){obj.D=31-D1+D2+1;setDay(obj,"31");}elseif(M1==4

34、

35、M1==6

36、

37、M1==9

38、

39、M1==11){o

40、bj.D=30-D1+D2+1;setDay(obj,"30");}elseif(M1==2){if(d1.getFullYear()%4==0){obj.D=29-D1+D2+1;setDay(obj,"29");}else{obj.D=28-D1+D2+1;setDay(obj,"28");}};};obj.M=obj.M>=12?obj.M%12:obj.M;vartext="";if(obj.D>0){text=obj.D+"天";};if(obj.M>0){text=obj.M+"个月"+text;if(obj.Y>0){text=obj.Y+"年"

41、+text;}};if(obj.M==0){if(obj.Y>0){if(text){text=obj.Y+"年零"+text;}else{text=obj.Y+"年";};};};returntext;}functionsetDay(obj,dTime){//当两个时间通过计算后的相差天数等于开始时间所在月的天数时,月份加一,天数重置为零if(obj.D>=parseInt(dTime)){obj.D=obj.D-parseInt(dTime);obj.M=obj.M>=12?obj.M%12:obj.M;obj.M+=1;if(obj.M>=12){obj

42、.Y+=1;}};}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。