2017-02-20 116 views
-1

關於Ajax使用JavaScript調用我得到的日期格式更改日期格式,以客戶的日期格式

Mon Feb 13 2017 00:00:00 GMT+0530(India Standard Time). 

我想根據使用JavaScript客戶端系統的日期格式更改日期格式。

任何人可以幫助我這個問題...

+0

請分享你嘗試過什麼 –

+0

是什麼日期您要轉換的格式 – shv22

+0

查看javascript的* native * D.吃對象:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date它有解析和打印日期的方法 –

回答

1

編輯:

您可以使用.toLocaleDateString()基於客戶端的計算機上格式化日期。

var date=new Date(); 
 
    alert(date.toLocaleDateString());


你真的應該使用moment.js

您可以使用moment.locale();初始化區域設置,然後相應地對其進行格式化。 按照鏈接,文檔

+0

好的..我會檢查 – Soni

+0

。toLocaleDateString()給我的格式爲2/13/2017,而它必須是13-Feb-17格式 – Soni

+0

檢查系統日期的顯示方式,如果它與上面的代碼返回值相同,則嘗試將系統區域設置從'地區和地區'在Windows中,然後再試 –

0

簡單...下面的代碼應該做的工作:

var date = new Date(); 
 
var dateString = date.getDate() + '/' + (date.getMonth() + 1) + '/' + date.getFullYear(); 
 

 
console.log(dateString);

希望這有助於:)

+0

不,這不會轉換爲系統日期時間格式.. – Soni

+0

@Soni你想將客戶系統日期格式轉換爲你的系統日期格式嗎? – m87

+0

沒有它的另一種方式..我有日期我想將它更改爲客戶端系統日期格式.. – Soni

0

使用dateObj.getTimezoneOffset()方法來獲得時區偏移,然後根據您收到的結果進行加/減,如 MDN所述,已經回答了stackoverflow question

function convertUTCDateToLocalDate(date) { 
var newDate = new Date(date.getTime()+date.getTimezoneOffset()*60*1000); 

var offset = date.getTimezoneOffset()/60; 
var hours = date.getHours(); 

newDate.setHours(hours - offset); 

return newDate; 
} 

用法:

var date = convertUTCDateToLocalDate(new Date(date_string_you_received)); 

顯示基於本地時間

date.toLocaleString(); 

通過@Adorjan Princz作爲回答時間

+0

我試過使用這個功能,我得到的格式爲格式爲2/13/2017,而它必須是13-Feb-17格式 – Soni

+0

所有你必須使用[momentjs](http:// momentjs (日期).format('Do MMMM YY');' 檢查這[[小提琴]](http://jsfiddle.net/jsjain007/h38h0Ljf/2)/你的情況 ' /)希望這也可以解決你的日期格式問題 – warl0ck