Question about js conversion time issue

JS uses the time format of GMT, and the current time is obtained in the CST format on the server side. When using new Date(strDate) to convert, it is converted to GMT format, and the above error occurs:

Original time format: Thu Aug 18 20:38:54 CST 2016
GMT time format: Fri Aug 19 2016 10:38:54 GMT+0800 (China Standard Time)
Converting time format: 2016-08-19 10:38

to GMT time:
function getTaskTime(strDate) {  
    console.log("Original time format: "+strDate);  
    var date = new Date(strDate);  
    var y = date.getFullYear();   
    var m = date.getMonth() + 1;    
    m = m < 10 ? ('0' + m) : m;    
    var d = date.getDate();    
    d = d < 10 ? ('0' + d) : d;    
    var h = date.getHours();    
    var minute = date.getMinutes();    
    minute = minute < 10 ? ('0' + minute) : minute;  
    var str = y+"-"+m+"-"+d+" "+h+":"+minute;  
    console.log("Convert time format: "+str);  
    return str;  
};

Segment the time string in CST format, re-splicing it into GMT format, and then display:

function getTaskTime(strDate) {   
    if(null==strDate || ""==strDate){  
        return "";  
    }  
    var dateStr=strDate.trim().split(" ");  
    var strGMT = dateStr[0]+" "+dateStr[1]+" "+dateStr[2]+" "+dateStr[5]+" "+dateStr[3]+" GMT+0800";  
    var date = new Date(Date.parse(strGMT));  
    var y = date.getFullYear();  
    var m = date.getMonth() + 1;    
    m = m < 10 ? ('0' + m) : m;  
    var d = date.getDate();    
    d = d < 10 ? ('0' + d) : d;  
    var h = date.getHours();  
    var minute = date.getMinutes();    
    minute = minute < 10 ? ('0' + minute) : minute;  
    var second = date.getSeconds();  
    second = second < 10 ? ('0' + second) : second;  
      
    return y+"-"+m+"-"+d+" "+h+":"+minute+":"+second;  
};  

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326805292&siteId=291194637