2016-02-12 66 views
1

我有以下日期格式:2015-02-18T07:07:25.136Z從我的數據庫,我想將其轉換爲07:07:25 18-02-2015。我繼續得到以下內容:10:07:25 , 18-01-2015。 我使用下面的函數給我上面的日期:轉換日期:我:s到H:我:■DD-MM-YYYY jQuery的

var order_date = item.dateordered; 
var date = new Date(order_date), 
    yr = date.getFullYear(), 
    month = +date.getMonth() < 10 ? '0' + date.getMonth() : date.getMonth(), 
    day = +date.getDate() < 10 ? '0' + date.getDate() : date.getDate(), 
    hour = +date.getHours() < 10 ? '0' + date.getHours() : date.getHours(), 
    minutes = +date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(), 
    seconds = +date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds(), 
    cleaned_order_date = hour + ':' + minutes + ':' + seconds + ' , ' + day + '-' + month + '-' + yr; 

什麼是從2015-02-18T07:07:25.136Z日期轉換爲07:07:25 , 18-02-2015最好的方法是什麼?

+0

你可以通過固定的語法錯誤開始,那麼它實際上可能執行一些代碼 – RiggsFolly

+0

人有沒有更好的辦法。你需要編寫你自己的函數/方法。 –

+0

看看這個答案:http://stackoverflow.com/a/5250298/2269749 – BlitZ

回答

2

,你可以簡單地使用正則表達式替換和捕獲組: -

var regex = /(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}).\d{3}[Z]/; 
 
var currentVal = '2015-02-18T07:07:25.136Z'; 
 

 
var newVal = currentVal.replace(regex, '$4:$5:$6 $3-$2-$1') //"07:07:25 18-02-2015" 
 

 
alert(newVal);

0

這可能有助於

var d = new Date(); 
var date = d.getDate(); 
var month = d.getMonth() + 1; 
var year = d.getFullYear(); 
var hours = d.getHours(); 
var mins = d.getMinutes(); 
var datestring = month + "/" + date + "/" + year + " at " + hours + ":" + mins; 

或者

請參閱link