JavaScript で文字列を日付に解析する 質問する

JavaScript で文字列を日付に解析する 質問する

JavaScript で文字列を Date オブジェクトに変換するにはどうすればよいですか?

var st = "date in some format"
var dt = new Date();

var dt_st = // st in Date format, same as dt.

ベストアンサー1

文字列解析に最適な文字列形式は、日付 ISO 形式と JavaScript Date オブジェクト コンストラクターを組み合わせたものです。

ISO 形式の例:YYYY-MM-DDまたはYYYY-MM-DDTHH:MM:SS

しかし、ちょっと待ってください。「ISO 形式」を使用するだけでは、確実に動作しません。文字列は、ブラウザのベンダーとバージョンに応じて、UTC として解析される場合もあれば、ローカルタイムとして解析される場合もあります。ベスト プラクティスは、常に日付を UTC として保存し、計算を UTC として行うことです。

日付を UTC として解析するには、Zを追加します(例: ) new Date('2011-04-11T10:20:30Z')

日付を UTC で表示するには を使用し、.toUTCString()日付
をユーザーの現地時間で表示するには を使用します.toString()

詳細情報MDN | 日付そしてこの答え

古い Internet Explorer との互換性を保つために (IE バージョン 9 未満は Date コンストラクターで ISO 形式をサポートしていません)、datetime 文字列表現を各部分に分割し、datetime 部分を使用するコンストラクターを使用する必要があります。例: new Date('2011', '04' - 1, '11', '11', '51', '00')。月の数字は 1 少なくする必要があることに注意してください。


別の方法 - 適切なライブラリを使用する:

図書館も利用できますモーメント指定されたタイムゾーンで日付を解析できます。

おすすめ記事