我知道關於JavaScript
,String
s和Date
s有很多問題。但是我找不到解決我的問題的方法。關於區域設置的日期格式字符串
我使用Spring MVC的dateTime
字段。該暴露出的問題,我的後端需要一個日期的某種格式(這是不固定的,我可以改變,如果有必要)
@RequestParam(value = PARAM_SELECT_DATE) @org.springframework.format.annotation.DateTimeFormat(pattern = "dd.MM.yyyy") final Date selectDate
但每次瀏覽器解析選定的日期不同,給了我很頭疼,比如,
de-DE: 13.02.2014
en-US: Feb 13, 2014
我無法將每個語言環境轉換爲通用日期格式,以便將其傳遞到後端。
我不想在我的項目中擁有(更多)依賴項,所以如何解析關於語言環境的JS日期,像Date.parse(date, locale)
就好。
而且我不想解析日期以醜陋的方式,如
if (navigator.language == 'en-US') {
var split = date.split(",");
var splitTwo = split[0].split(" ");
date = new Date(split[1], splitTwo[0] - 1, splitTwo[1]); // even here I would get 'Feb' instead of 02, another parse method would be needed
} else if (navigator.language == 'de-DE') {
var split = date.split(".");
date = new Date(split[2], split[1] - 1, split[0]);
}
,如果更多的語言環境產生的方法將不得不延長方法。
如何從日期字符串取決於語言環境的javascript日期對象?
看看這裏 - http://stackoverflow.com/questions/7175462/how-to-convert-localized-date-to-standard-date-in-javascript –
使用外部庫 – Manuel