JavaScript でタイムゾーンを指定せずに日付文字列を解析する場合、ブラウザはローカル タイムゾーンに基づいて日付文字列を解釈します。これにより、異なるタイムゾーンにまたがる日付を操作する場合、予期しない結果が生じる可能性があります。この問題を解決するには、タイムゾーンの解釈を回避し、現地時間に対応する Date オブジェクトを生成する解決策が必要です。
1 つのアプローチには、getTimezoneOffset() メソッドを利用することが含まれます。このメソッドは、ローカル タイムゾーンと UTC の差を分単位で返します。 getTimezoneOffset() によって返された値に 60000 (1 分あたりのミリ秒) を乗算した値を日付の getTime() 値に加算することで、タイムゾーン オフセットが修正されます。以下に例を示します。
<code class="javascript">var date = new Date('2016-08-25T00:00:00'); var userTimezoneOffset = date.getTimezoneOffset() * 60000; var correctedDate = new Date(date.getTime() + userTimezoneOffset);</code>
これは、タイムゾーンの変換を行わずに、解析時の現地時間に対応する Date オブジェクトを生成します。 getTimezoneOffset() は場所に応じて負の値と正の値の両方を返す可能性があることに注意することが重要です。
以上がJavaScriptでタイムゾーン変換を行わずに日付文字列を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。