浏览 22074 次
锁定老帖子 主题:javascript给日期加一天
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-09-10
javaScript给日期加一天 <script language="javascript"> function test(){ var mm="2011-10-10"; var arr = mm.split("-"); var newdt = new Date(Number(arr[0]),Number(arr[1])-1,Number(arr[2])+1); repnewdt = newdt.getFullYear() + "-" + (newdt.getMonth()+1) + "-" + newdt.getDate(); alert(repnewdt); } test(); </script>
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-09-10
date.setDate(date.getDate() + 1)不行吗?
|
|
返回顶楼 | |
发表时间:2011-09-11
int08h 写道 date.setDate(date.getDate() + 1)不行吗?
行。 但是我这个传过来的是String类型的,要先转换成date类型。 |
|
返回顶楼 | |
发表时间:2011-09-17
我记得date有一些方法,可以截取给定日期的相关部分,如年月日。试试看。
|
|
返回顶楼 | |
发表时间:2011-09-18
yangkai5941100 写道 我记得date有一些方法,可以截取给定日期的相关部分,如年月日。试试看。
O(∩_∩)O~,我上面给出的就是把String类型的时间加一天。 你的意思是先格式化到需要的类型再加日期吧,那样也行。 |
|
返回顶楼 | |
发表时间:2011-09-19
最后修改:2011-09-19
lysvanilla 写道
javaScript给日期加一天 repnewdt = newdt.getFullYear() + "-" + (newdt.getMonth()+1) + "-" + newdt.getDate();
|
|
返回顶楼 | |
发表时间:2011-09-19
最后修改:2011-09-19
function getNow(dayFix){ var today = new Date(); if(dayFix && !isNaN(dayFix/2)){ today.setDate(today.getDate()+dayFix); } var year = today.getFullYear().toString(), month = today.getMonth()+1, day = today.getDate(); month = month >= 10 ? month.toString() : '0'+month.toString(); day = day >= 10 ? day.toString() : '0'+day.toString(); return year +'-'+ month +'-'+ day; } |
|
返回顶楼 | |
发表时间:2011-09-19
zhao_chong 写道
lysvanilla 写道
javaScript给日期加一天 repnewdt = newdt.getFullYear() + "-" + (newdt.getMonth()+1) + "-" + newdt.getDate();
因为月份是0-11,所以转换为日期格式的时候要先减一(Number(arr[1])-1),然后在显示的时候要给它加出来,所以 (newdt.getMonth()+1) 。这个是没有问题的。 你没有理解,而且也没有测试,才会说不对,如果还没理解的话,就测试一下吧。
我认为这已经很简单了,你还能再简单?那请你给出方案。(前提是var mm="2011-10-10"; 这个时间是字符串String类型,不是date类型) |
|
返回顶楼 | |
发表时间:2011-09-19
interjc 写道
function getNow(dayFix){ var today = new Date(); if(dayFix && !isNaN(dayFix/2)){ today.setDate(today.getDate()+dayFix); } var year = today.getFullYear().toString(), month = today.getMonth()+1, day = today.getDate(); month = month >= 10 ? month.toString() : '0'+month.toString(); day = day >= 10 ? day.toString() : '0'+day.toString(); return year +'-'+ month +'-'+ day; }
哥们可以解释下么。没看懂,也没测试成功。 if(dayFix && !isNaN(dayFix/2))
你这个是直接获取的date类型,我上面给出的方法是String类型,先转换成date类型。(不过在转换的过程中还有其他方法而,比如SimpleFormat) |
|
返回顶楼 | |