web-dev-qa-db-ja.com

正しいJavascriptDate.parse(...)フォーマット文字列?

Javascript Date()コンストラクターが文字列を解析して適切な日付オブジェクトを作成できるように、文化に依存しない文字列を構築する方法は何ですか?

私は機能しないこれらのフォーマット文字列を試しました(C#を使用して文字列を生成します):

clientDate.ToString();
// gives: "11/05/2009 17:35:23 +00:00"

clientDate.ToString("MMM' 'dd', 'yyyy' 'h':'mm':'ss' 'tt");
// works on an English server
// but on a French server, gives: "mai 11, 2009 5:35:23"
// Javascript won't parse that.

clientDate.ToString("MM'-'dd'-'yyyy' 'HH':'mm':'ss")
// gives: 05-11-2009 17:35:23

ユニバーサルフォーマットとは何ですか?

21

MDCによる

時間を表す文字列を指定すると、parseは時間の値を返します。 IETF標準( RFC 112 セクション5.2.14など)の日付構文を受け入れます:"Mon, 25 Dec 1995 13:30:00 GMT"。米国本土のタイムゾーンの略語を理解しますが、一般的な使用には、タイムゾーンオフセットを使用します(例:"Mon, 25 Dec 1995 13:30:00 GMT+0430"(グリニッジ子午線の東4時間30分)。タイムゾーンを指定しない場合は、ローカルタイムゾーンが想定されます。 GMTとUTCは同等と見なされます。

英語のロケールを使用してこの形式を生成できない場合は、 Date.UTC を使用してみてください

19

Javascriptが解析できるロケールに依存しない形式が必要な場合は、2013-03-31T16:36:57+0900を使用できます。少なくともNode.jsとChromeで動作するので、標準だと思います。

1
jcayzac