js中格式化时间字符串,时间加减

下面介绍一种在js中,关于时间格式的转换。

<script>   
function formatDate(date, format) {   
    if (!date) return;   
    if (!format) format = "yyyy-MM-dd";   
    switch(typeof date) {   
        case "string":   
            date = new Date(date.replace(/-/, "/"));   
            break;   
        case "number":   
            date = new Date(date);   
            break;   
    }    
    if (!date instanceof Date) return;   
    var dict = {   
        "yyyy": date.getFullYear(),   
        "M": date.getMonth() + 1,   
        "d": date.getDate(),   
        "H": date.getHours(),   
        "m": date.getMinutes(),   
        "s": date.getSeconds(),   
        "MM": ("" + (date.getMonth() + 101)).substr(1),   
        "dd": ("" + (date.getDate() + 100)).substr(1),   
        "HH": ("" + (date.getHours() + 100)).substr(1),   
        "mm": ("" + (date.getMinutes() + 100)).substr(1),   
        "ss": ("" + (date.getSeconds() + 100)).substr(1)   
    };       
    return format.replace(/(yyyy|MM?|dd?|HH?|ss?|mm?)/g, function() {   
        return dict[arguments[0]];   
    });                   
}   
  
alert(formatDate("2010-04-30", "yyyy-MM-dd HH:mm:ss"));   
alert(formatDate("2010-4-29 1:50:00", "yyyy-MM-dd HH:mm:ss"));   
 </script>
var datestr="/Date(1408291200000+0800)/"; //模拟我们返回的json日期格式

var newdate=eval(datastr.replace(/\//g, '')); // 通过这个方法日期被格式化成了"Wed Aug 20 2014 18:54:10 GMT+0800 (中国标准时间)"标准时间格式

然后在调用上面的方法:

alert(formatDate(newdate, "yyyy-MM-dd HH:mm:ss"));   
alert(formatDate(newdate, "yyyy-MM-dd")); 

返回结果:  

2014-08-20 19:00:13

2014-08-20  

 

时间加几天
var dateTime=new Date();
// 加一天
dateTime=dateTime.setDate(dateTime.getDate()+1);
dateTime=new Date(dateTime);

 时间格式字符串,转为js date对象

var paramDate = new Date(Date.parse(date));
paramDate.setDate(paramDate.getDate() + 1);

 

 

 

posted @ 2017-10-24 10:47  君子笑而不语  阅读(2572)  评论(0编辑  收藏  举报