Js 有管日期的操作 转换...

近日 遇到一个js date 方面的问题 ;

首先描述下问题 :

   在做项目时,将后台的数据读取到datatable中然后通过一方法将datatable中的数据转换成json格式的字符串 返回给前端. 这个方法将

所有的数据都转换成了字符串. date 格式的数据被转换成了"yyyy-mm-dd- hh:mm:ss"如 2011-11-11 11:11:11 这样的. 非常不幸date

不接受这样的字符串进行构造. 所以有了下面的笨办法 . 

var ToDate=function(str){
var strtem=str.replace(/(\d{4})-(\d{1,2})-(\d{1,2})\s(\d{1,2}):(\d{1,2}):(\d{1,2})/, "$2-$3-$1 $4:$5:$6")
var temdate= Date.parse(strtem);
return new Date(temdate);
}

这个方法就将上面提到的字符串传入就会返回一个date 类型的对象

但是还有一个问题就是有关 日期计算的问题 最后找到一个方法解决

 var AddDay=function(d1,days){                  
d1.setDate(d1.getDate() + days); // 系统会自动转换
return d1;
}
//参数一 为一个日期对象
//
参数二 为一个数字 需要增加的天数

最后还有一个有关 显示的问题 

这里通过 获取日期的每一部分然后进行字符串的拼接 进行

 var DateFormate = function date(D){                        
var year = D.getFullYear();
var month = D.getMonth()+1; //js从0开始取
var date1 = D.getDate();
var hour = D.getHours();
var minutes = D.getMinutes();
var second = D.getSeconds();
return (year+"年"+month+"月"+date1+"日" );
}

上述方法应该能解决一些问题, 应该有更好的解决办法,希望高手指出

原文地址:https://www.cnblogs.com/wxzl/p/2287606.html