A-A+
	javascript中计算日期加减程序代码
本文章总结了关于javascript中计算日期加减程序代码,有使用到日期加减代码的朋友可参考本文章来操作。
实例,下面我总结了一下,写了一个js方法,主要解决,某个日期+多少月多少天=某个日期的问题,至于,某个日期-某个日期=多少天,代码如下:
- //解决IE下得到时间为NaN的情况
 - function parseISO8601(dateStringInRange) {
 - var isoExp = /^s*(d{4})-(dd)-(dd)s*$/,
 - date = new Date(NaN), month,
 - parts = isoExp.exec(dateStringInRange);
 - if(parts) {
 - month = +parts[2];
 - date.setFullYear(parts[1], month - 1, parts[3]);
 - if(month != date.getMonth() + 1) {
 - date.setTime(NaN);
 - }
 - }
 - return date;
 - }
 - var change_date = function(dates,months,days) {
 - var datestr = parseISO8601(dates);
 - // 参数表示在当前日期下要增加的天数
 - var now = new Date(datestr);
 - if(months != 0){
 - now.setMonth(now.getMonth() + months);
 - }
 - now.setDate((now.getDate()-1) + 1 * days);
 - var year = now.getFullYear();
 - if(months != 0){
 - var month = now.getMonth()+1;
 - }else{
 - var month = now.getMonth()+1;
 - }
 - var day = now.getDate();
 - if (month < 10) {
 - month = '0' + month;
 - }
 - if (day < 10) {
 - day = '0' + day;
 - }
 - return year + '-' + month + '-' + day;
 - };
 - var n = change_date("2012-12-01",12,32);
 - alert(n);
 
javascript中日期的加减运算.如今天+80天.
例子,代码如下:
- <script>
 - function DateAdd(interval,number,date)
 - {
 - /*
 - *--------------- DateAdd(interval,number,date) -----------------
 - * DateAdd(interval,number,date)
 - * 功能:实现VBScript的DateAdd功能.
 - * 参数:interval,字符串表达式,表示要添加的时间间隔.
 - * 参数:number,数值表达式,表示要添加的时间间隔的个数.
 - * 参数:date,时间对象.
 - * 返回:新的时间对象.
 - * var now = new Date();
 - * var newDate = DateAdd( "d ",5,now);
 - * author:wanghr100(灰豆宝宝.net)
 - * update:2004-5-28 11:46
 - *--------------- DateAdd(interval,number,date) -----------------
 - */
 - switch(interval)
 - {
 - case "y " : {
 - date.setFullYear(date.getFullYear()+number);
 - return date;
 - break;
 - }
 - case "q " : {
 - date.setMonth(date.getMonth()+number*3);
 - return date;
 - break;
 - }
 - case "m " : {
 - date.setMonth(date.getMonth()+number);
 - return date;
 - break;
 - }
 - case "w " : {
 - date.setDate(date.getDate()+number*7);
 - return date;
 - break;
 - }
 - case "d " : {
 - date.setDate(date.getDate()+number);
 - return date;
 - break;
 - }
 - case "h " : {
 - date.setHours(date.getHours()+number);
 - return date;
 - break;
 - }
 - case "m " : {
 - date.setMinutes(date.getMinutes()+number);
 - return date;
 - break;
 - }
 - case "s " : {
 - date.setSeconds(date.getSeconds()+number);
 - return date;
 - break;
 - }
 - default : {
 - date.setDate(d.getDate()+number);
 - return date;
 - break;
 - }
 - }
 - }
 - var now = new Date();
 - //加五天.
 - var newDate = DateAdd( "d ",5,now);
 - alert(newDate.toLocaleDateString())
 - //加两个月.
 - newDate = DateAdd( "m ",2,now);
 - alert(newDate.toLocaleDateString())
 - //加一年
 - newDate = DateAdd( "y ",1,now);
 - alert(newDate.toLocaleDateString())
 - </script>