質問編集履歴
5
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -66,4 +66,9 @@
|
|
66
66
|
setDefault の引数のオフセットがとれればよかったのですが…
|
67
67
|
|
68
68
|
フレームワーク間のタイムゾーンの表現の差はいかんともできないので
|
69
|
-
もしうまく Rails の Time.zone からmoment-timezone の setDefault にわたせる方法があれば教えていただきたいです
|
69
|
+
もしうまく Rails の Time.zone からmoment-timezone の setDefault にわたせる方法があれば教えていただきたいです
|
70
|
+
|
71
|
+
追記:
|
72
|
+
|
73
|
+
別の質問で Rails 側から 地域/都市 形式のタイムゾーン文字列を取得する方法を教えていただいたので moment を使ってやりたいことができました
|
74
|
+
お答えいただいた方々本当のありがとうございました
|
4
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -41,4 +41,29 @@
|
|
41
41
|
|
42
42
|
例えばハワイ時間 -1000 として 2018-09-25 12:00:00 を読み込んで
|
43
43
|
moment('2018-09-25 12:00:00').utcOffset('540').format();
|
44
|
-
とやったときに日本時間 +900 で 19時間後の 9/26 7:00 という時刻になってほしいです
|
44
|
+
とやったときに日本時間 +900 で 19時間後の 9/26 7:00 という時刻になってほしいです
|
45
|
+
|
46
|
+
|
47
|
+
追記:
|
48
|
+
|
49
|
+
結局いろいろ試した結果最初に回答をいただいたとおり offset 加減することにしました
|
50
|
+
|
51
|
+
javascript 単体で見れば moment を使ったほうがきれいにかける気がするのですが
|
52
|
+
|
53
|
+
たとえばハワイのタイムゾーンの場合 Rails 側から渡せる timezone の情報が
|
54
|
+
(GMT-10:00) Hawaii
|
55
|
+
Hawaii
|
56
|
+
Pacific - Honolulu
|
57
|
+
-36000
|
58
|
+
の4つの文字列しかなく最初の3つを setDefault にいれても変わらなかったので
|
59
|
+
結局オフセットで加減するなら moment じゃなくても Date でいいかなと
|
60
|
+
```
|
61
|
+
const date = new Date('2018-09-25 12:00:00');
|
62
|
+
date.setTime(date.getTime() - date.getTimezoneOffset() + <%= Time.zone.utc_offset %>);// localに変換
|
63
|
+
```
|
64
|
+
という感じです
|
65
|
+
|
66
|
+
setDefault の引数のオフセットがとれればよかったのですが…
|
67
|
+
|
68
|
+
フレームワーク間のタイムゾーンの表現の差はいかんともできないので
|
69
|
+
もしうまく Rails の Time.zone からmoment-timezone の setDefault にわたせる方法があれば教えていただきたいです
|
3
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -37,4 +37,8 @@
|
|
37
37
|
var moment = require('moment-timezone');
|
38
38
|
moment.tz.setDefault("Asia/Tokyo");
|
39
39
|
あたりを使えばできるきがするんですが自分の環境では require が undefined になってしまうので
|
40
|
-
JSの範囲内ではできないでしょうか
|
40
|
+
JSの範囲内ではできないでしょうか
|
41
|
+
|
42
|
+
例えばハワイ時間 -1000 として 2018-09-25 12:00:00 を読み込んで
|
43
|
+
moment('2018-09-25 12:00:00').utcOffset('540').format();
|
44
|
+
とやったときに日本時間 +900 で 19時間後の 9/26 7:00 という時刻になってほしいです
|
2
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,4 +24,17 @@
|
|
24
24
|
var time = new Date('2018-09-25 12:00:00 JST');
|
25
25
|
time.toTZformat('UTC'); #Tue Sep 25 2018 3:00:00 UTC
|
26
26
|
|
27
|
-
みたいにタイムゾーン文字列と Date オブジェクトからそのタイムゾーン時刻の出力を得たいです
|
27
|
+
みたいにタイムゾーン文字列と Date オブジェクトからそのタイムゾーン時刻の出力を得たいです
|
28
|
+
|
29
|
+
|
30
|
+
追記:
|
31
|
+
|
32
|
+
moment のおかげで
|
33
|
+
moment('2018-09-25 12:00:00').utcOffset(...).format() とすれば
|
34
|
+
任意のタイムゾーンで出力することはできるようになったんですが
|
35
|
+
|
36
|
+
タイムゾーン情報のない時刻文字列を特定のタイムゾーンとして読み込むことができなくて困ってます
|
37
|
+
var moment = require('moment-timezone');
|
38
|
+
moment.tz.setDefault("Asia/Tokyo");
|
39
|
+
あたりを使えばできるきがするんですが自分の環境では require が undefined になってしまうので
|
40
|
+
JSの範囲内ではできないでしょうか
|
1
タイトル修正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
Date のタイムゾーンについて
|
body
CHANGED
@@ -22,6 +22,6 @@
|
|
22
22
|
あと設定ではなく明示的にTZを与えてそのTZ時刻を出力するにはどうすればいいんでしょうか
|
23
23
|
|
24
24
|
var time = new Date('2018-09-25 12:00:00 JST');
|
25
|
-
ime.toTZformat('UTC'); #Tue Sep 25 2018 3:00:00 UTC
|
25
|
+
time.toTZformat('UTC'); #Tue Sep 25 2018 3:00:00 UTC
|
26
26
|
|
27
27
|
みたいにタイムゾーン文字列と Date オブジェクトからそのタイムゾーン時刻の出力を得たいです
|