63414


例えばタイムゾーンがアメリカ合衆国の環境でサマータイム終了日のDateオブジェクトを以下のように生成した時

[code]

    new Date(2018, 10, 4, 1, 30) // 2018年11月4日 午前01:30
    
[/code]

そのオブジェクトのUTC時刻は夏時間終了前となるか、夏時間終了後となるか、もしくは未定義か、知りたいです。

[ECMAScript® 2019 Language Specification](https://www.ecma-
international.org/ecma-262/10.0/index.html#sec-local-time-zone-adjustment)
によると

> When tlocal represents local time repeating multiple times at a  
>  negative time zone transition (e.g. when the daylight saving time ends  
>  or the time zone adjustment is decreased due to a time zone rule  
>  change) or skipped local time at a positive time zone transitions  
>  (e.g. when the daylight saving time starts or the time zone adjustment  
>  is increased due to a time zone rule change), tlocal must be  
>  interpreted with the time zone adjustment before the transition.

とありますが、上記の例（2018年11月4日 午前01:30）は常に夏時間終了前の時刻になる、という解釈で合っているでしょうか？


CC BY-SA 4.0
2020-02-27T14:36:26.827
63413
2020-02-27T15:17:23.240
2020-02-27T14:48:27.377
4388
4388
question
javascript
ECMAScriptのDateコンストラクタ引数にローカル時刻を指定したときのタイムゾーンオフセットについて


はい、その場合は常に夏時間終了前の時刻になります。

引用された部分の最後に “tlocal must be interpreted with the time zone adjustment before
the transition.” とあり、the time zone adjustment before the
transitionとは変化が発生する前（夏時間が終了する前）のオフセットを指していると考えられます。

また、その直後のNOTEに夏時間終了時の具体例が書かれています。

> 1:30 AM on November 5, 2017 in America/New_York is repeated twice (fall
> backward), but it must be interpreted as 1:30 AM UTC-04 instead of 1:30 AM
> UTC-05.

America/New_York タイムゾーンにおいては夏時間があり、夏時間時はUTC-04,
夏時間終了後はUTC-05となります。このNOTEによると、2017年11月5日のAM
01:30という時刻は夏時間終了に伴って2回発生しますが、UTC-04（夏時間終了前）で解釈されなければならない (must) とされています。


CC BY-SA 4.0
2020-02-27T15:17:23.240
63414
2020-02-27T15:17:23.240
30079
63413
answer