1. 程式人生 > >【Json】時間格式轉換

【Json】時間格式轉換

在做專案中,將實體轉化為JSON後,結果後臺返回json時間格式為/Date(1306418993027)/

在前臺JS裡顯示的並不是真正的日期,而且我們不能把所有日期欄位都變成string吧,

網上有不少的解決方法,但看著都挺麻煩的。因此寫了Javascript的擴充套件方法,來實現這個功能,程式碼如下

//格式化JSON時間 2017-09-08 20:32:30
function FormatJsonTime(date) {
    if (date != null) {
        var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));
        var y = de.getFullYear();
        var m = de.getMonth() + 1;
        var d = de.getDate();
        var h = de.getHours();
        var mi = de.getMinutes();
        var s = de.getSeconds();
        return y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d)+' '+(h<10?('0'+h):h)+':'+(mi<10?('0'+mi):mi)+':'+(s<10?('0'+s):s);
    }
    else {
        return "";
    }
}

//格式化JSON時間 2017-09-08
function FormatJsonDate(date) {
    if (date != null) {
        var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));
        var y = de.getFullYear();
        var m = de.getMonth() + 1;
        var d = de.getDate();
        return y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d);
    }
    else {
        return "";
    }
}

需要將jquery檔案引入

簡單說下:var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));

先替換掉“/Date(”,然後再替換掉“)”,然後再轉成int型別,再轉換成date型別

將格式為/Date(1306418993027)/轉換為時間型別