データベースからの日付文字列を新しい Date() オブジェクトに変換するにはどうすればよいですか?
私が次のことをした場合:
var x = new Date('2013-11-05 11:01:46:0');
alert(x);
Chrome では動作しますが、Safari では「Invalid Date」という文字列が表示されます。 これがフィドルです。
データベースからの日付文字列を新しい Date() オブジェクトに変換するにはどうすればよいですか?
私が次のことをした場合:
var x = new Date('2013-11-05 11:01:46:0');
alert(x);
Chrome では動作しますが、Safari では「Invalid Date」という文字列が表示されます。 これがフィドルです。
が受け入れる文字列の形式は、new Date(string)
実装に依存します。ただし、ブラウザーが ES5 仕様を正しく実装している場合は、正当な ISO 8601 文字列の厳密なサブセットを受け入れる必要があります。基本的に、現地時間の代わりに UTC を使用し、日付と時刻の間にスペースの代わりに「T」を入れ、整数秒と小数秒の間にコロンの代わりに小数点を使用し、最後に「Z」を追加する必要があります。全体の:
2013-11-05T11:01:46.000Z
おそらく、データベースに日付をその形式で出力させることができます。それ以外の場合は、 moment.jsなどのサードパーティ ライブラリを調べる必要があります。