◆ 時間の速度は変えずに連続性をなくすみたい
◆ 連続性は維持させて速度を変えると思ってた

少し前まではよくみかけたサマータイムの話題ですが最近は見かけません
少し知識あれば無理だって誰でもわかりそうなことなのでなしになったのでしょうか

3 日前の日付求めるのにありそうなこういうのですら 3 日前じゃなくなる可能性があるわけですしね

new Date(Date.now() - 1000 * 60 * 60 * 24 * 3).toLocaleDateString()

ただでさえ修正箇所多すぎですし 昔過ぎて作った人が残ってないようなプログラムを修正しないといけないとかすごく大変そうです

切り替わり

ところで 切り替わりってどうなるのか 特に気にする必要もなかったので想像でしかなかったのですが サマータイムの説明してるページを良く見かけたので見ていたら思ってたのとは違いました

1 時間のサマータイムで 1 時に切り替わりだとすると

1 時になるタイミングで 1 時間飛んで 2 時になるそうです
戻るときは 2 時になるタイミングで 1 時間戻って 1 時になるそうです
1 時 30 分という時刻が 2 回存在するということです

1 時 30 分と登録されたものはどうするのかと思うのですが あまりそのへんは考えられてないとか
スケジュールなら好きな方でやれば良さそうですが バッチ処理はそんな適当じゃまずいので 1 回目に実行して実行済みステータスなら 2 回目はパスとかなんでしょうか
登録時に unix timestamp 形式にしてればどっちか一回にしか実行されなそうですけど

思ってたものは

上に書いたように実際の切り替わりは 時間の速度は一定のままで 時間の連続性を壊すものです
急に飛んだり 戻ったりですね

私が思ってたものだと 連続性は絶対で時間の速度を変えるというものでした

上の例に合わせると
1 時間ずらすのでさらに 1 時間前の 0 時から 2 倍の速さで時計を進めます
1 時になったときには 時計は 2 時になっています
戻すときは 0 時から 2 倍の時間をかけて時計を進めます
時計が 1 時になるタイミングでは 2 時間経過しています

コンピュータが管理しないアナログ時計でそんなことは無理ですが パソコンなどではできなくはないと思います
それに 連続しないことのほうが順番が入れ替わったり大変そうなので こういう感じの時間の速度を変えてずらすのかなと思ってました
でもそんなことはしないのですね