寒い!
昨日の雪が積もっているみたい。
出勤も歩きづらい道を行く。
常磐線も遅れていた。
今日はバグだしをしよう。
いろいろ変な値を入れてみたり。
重大なバグを発見してしまった。
二つの日付の日数を計算しているところにバグがあるみたい。
2 月 1 日から 3 月 1 日までの日数が 32 日になってしまう。
調べてみると、コーディングミスだ。
JavaScript の Date オブジェクトは、「月」は 0 ~ 11 の値を取る。
この処理を作った人は、「月」に 1 ~ 12 の値をそのまま渡してしまっていた。
一月ずれたわけだ。
それにしても、この JavaScript の仕様はそもそもおかしいんじゃないの?
何で「月」だけ 0 から始まるんだ?
「日」はちゃんと 1 から開始なのに。
この罠には気をつけないと。
疲れたので定時で上がる。
夕飯はニョッキ!