2016-12-31 57 views
-2

一定的格式我有一個返回一串日期這種格式新的日期,接受在JavaScript

dd/mm/yyyy 

這樣的API,當我嘗試做一些新的日期()

new Date('1/2/2017')我一月2,但事實上這意味着2月1日我不能改變API的寫法,我可以使新的Date()以dd/mm/yyyy而不是mm/dd/yyyy的任何解決方法?

我不想使用像時刻的圖書館。

+0

你不想要的jQuery這一點。 ''yourDate.replace(/(\ d +)\ /(\ d +)\ /(\ d {4})/,「$ 2/$ 1/$ 3」)很容易切換當天的月份。或者'.split(「/」)'並且使用'new Date(year,month,day)'。 – nnnnnn

+0

有一個getDateFromFormat()函數,用於解析日期字符串並返回ms表示日期對象http://www.mattkruse.com/javascript/date/的時間。也許這會解決你的問題。 – tomepejo

回答

1

您可以倒轉當前的日期順序。 Date構造函數將接受yyyy/mm/dd的格式。這也將是比做正則表達式更簡單:

function getDate(date) { 
 
    date = date.split('/').reverse().join('/'); 
 
    return new Date(date); 
 
} 
 

 
let date = '1/2/2017'; 
 

 
alert(getDate(date)); // Wednesday, February 1, 2017