這是我下了RSS提要的日期: 「2014-02-28T20:00:00 + 0100」如何將RSS feed的日期轉換爲荷蘭語日期的javascript?
現在我想它是這樣的:28 Februari 2014 - 20:00
燦來人幫幫我?
這是我下了RSS提要的日期: 「2014-02-28T20:00:00 + 0100」如何將RSS feed的日期轉換爲荷蘭語日期的javascript?
現在我想它是這樣的:28 Februari 2014 - 20:00
燦來人幫幫我?
RegExp可以解決這個問題。
您只需要一個數組與月份進行比較,並將其更改爲荷蘭語中的相應月份。
的jsfiddle是在這裏:http://jsfiddle.net/JdLBs/
代碼在這裏:
var date = "2014-02-28T20:00:00+0100";
var search = /(.*)T(.*)\+/i;
var result = date.match(search);
var tempYear = result[1].split('-');
var tempTime = result[2].split(':');
var dutchDate = tempYear[2] + ' ' + tempYear[1] + ' ' + tempYear[0] + ' - ' + tempTime[0] + ':' + tempTime[1];
console.log(dutchDate);
看看moment.js。它以任何你想要的格式返回日期:http://momentjs.com/
不想使用它,因爲它對我的應用程序來說很重要..有沒有其他方法可以做到這一點? – user2811083
好吧!我想你可以使用JavaScript的Date函數,如:var date = new Date(「2014-02-28T20:00:00 + 0100」)。我想這應該工作。 –
如果你可以限制自己支持ECMAScript Internationalization API最新的瀏覽器,那麼你就可以做到以下幾點:
var dt = new Date("2014-02-28T20:00:00+01:00");
var options = { year:'numeric',
month:'long',
day:'numeric',
hour:'numeric',
minute:'numeric'};
var s = dt.toLocaleString('nl', options);
結果是"28 februari 2014 11:00"
。如果您確實需要連字符:
var dt = new Date("2014-02-28T20:00:00+01:00");
var dateOptions = { year:'numeric', month:'long', day:'numeric' };
var timeOptions = { hour:'numeric', minute:'numeric'};
var s = dt.toLocaleDateString('nl', dateOptions) + ' - ' +
dt.toLocaleTimeString('nl', timeOptions);
另請參閱輸入字符串的偏移量。某些瀏覽器(如Internet Explorer)不會接受採用ISO8601格式的+0100
作爲偏移量,但需要完全擴展+01:00
。
正如anurag_29指出的那樣,如果您需要跨瀏覽器執行此操作,並且在較舊的瀏覽器中,您最好的選擇是moment.js。
請記住,月份名稱不是荷蘭語的大寫。 –