[解決済み】特定のタイムゾーンで日付をフォーマットする
2022-04-08 13:35:03
質問
を使っています。 モーメント.js を使用して、Web アプリで日付の解析と書式設定を行います。JSONオブジェクトの一部として、バックエンドサーバーはUTCエポック(Unixオフセット)からのミリ秒の数値として日付を送信します。
日付のパース 特定のタイムゾーンで RFC 822 のタイムゾーン識別子を文字列の末尾に追加してからパースするだけです。
// response varies according to your timezone
const m1 = moment('3/11/2012 13:00').utc().format("MM/DD HH:mm")
// problem solved, always "03/11 17:00"
const m2 = moment('3/11/2012 13:00 -0400').utc().format("MM/DD HH:mm")
console.log({ m1, m2 })
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
しかし、日付はどのように書けばよいのでしょうか 指定されたタイムゾーンで ?
ブラウザの現在時刻に関係なく一貫した結果を得たいのですが、日付をUTCで表示したくないのです。
どのように解決するのですか?
で指摘されているように
真斗の回答
,
.utcOffset()
は、Moment 2.9.0 以降で推奨されている方法です。この関数は UTC からの実オフセットを使用し、逆オフセット (例: 夏時間のニューヨークは -240) は使用しません。0400"のようなオフセット文字列は、以前と同じように動作します。
// always "2013-05-23 00:55"
moment(1369266934311).utcOffset(60).format('YYYY-MM-DD HH:mm')
moment(1369266934311).utcOffset('+0100').format('YYYY-MM-DD HH:mm')
古い
.zone()
セッターとして
でした
非推奨
Moment.js 2.9.0に含まれています。これは、タイムゾーン識別子 (例: "-0400" または "-04:00" -4 時間) または分を表す数値を含む文字列を受け付けました。
ビハインド
UTC (例: 夏時間中のニューヨークは240)。
// always "2013-05-23 00:55"
moment(1369266934311).zone(-60).format('YYYY-MM-DD HH:mm')
moment(1369266934311).zone('+0100').format('YYYY-MM-DD HH:mm')
数値のオフセットではなく、名前付きのタイムゾーンを扱うには、以下のようにします。
モーメントタイムゾーン
を使用し
.tz()
の代わりに
// determines the correct offset for America/Phoenix at the given moment
// always "2013-05-22 16:55"
moment(1369266934311).tz('America/Phoenix').format('YYYY-MM-DD HH:mm')
関連
-
[解決済み】JavaScriptで「無効な日付」のDateインスタンスを検出する
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] JavaScriptの日付の書式設定方法
-
[解決済み] JavaScriptで現在の日付を取得するには?
-
[解決済み] JavaScriptで特定の範囲のランダムな整数を生成する?
-
[解決済み] 数字を通貨文字列としてフォーマットする方法
-
[解決済み] 正しい」JSONの日付形式とは?
-
[解決済み] Moment.jsで日付オブジェクトに変換する
-
[解決済み] JavaScriptで日付を別のタイムゾーンに変換する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み] jQueryで、ユーザーがそのフィールドを編集している間、テキストフィールドの最初の文字を大文字にするにはどうすればよいですか?
-
[解決済み】JavaScriptのinnerHTMLで要素が更新されない
-
[解決済み】JavaScriptのボタンonclickが機能しない
-
[解決済み】 Uncaught Error: Invariant Violation: 解決済み】 Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function but got: object.
-
[解決済み】FirefoxでGoogle Maps V3をリモートで使用すると「googleが定義されていません」と表示される。
-
[解決済み】TypeError: res.status は関数ではありません。
-
[解決済み】 \u003C とは何ですか?
-
[解決済み】未定義のプロパティ 'forEach' を読み取ることができない
-
[解決済み] [Solved] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングする