|
■No92341 (魔界の仮面弁士 さん) に返信 > ■No92323 (はたさん さん) に返信
> 上記コードは、ym が "2019-09" 形式の文字列であることを前提としています。 > 他の形式の文字列(たとえば空文字とか、不正な年月など)が > 返される可能性がある場合は、適宜対処してください。 > > > type="month" をサポートしているブラウザ(Android Chrome とか、Edge/Canary とか)であれば、 > 'yyyy-MM' 形式の文字列が得られることが期待されますが、非サポートなブラウザの場合は、 > 別の文字列になることがあります。 > > > 場合によっては、"2019/09" と入力された文字列を自前で解析して、 > 「var dt = new Date(2019, 8, 1);」形式に置き換える必要があるかもしれません。 > WebSurferさんに回答したhtmlで作成致しました。 最初の質問で、htmlコードが抜けていました...すみません。 今後の参考にさせて頂きます。
> ただしタイムゾーンの扱いに注意。(今回は影響が無いかもしれませんが) > > dt1 = new Date("2019-09-01"); // Sun Sep 01 2019 09:00:00 GMT+0900 (日本標準時) > dt2 = new Date(2019, 8, 1); // Sun Sep 01 2019 00:00:00 GMT+0900 (日本標準時)
ブレークポイントをおいてみたところSun Sep 01 2019 09:00:00 GMT+0900 (日本標準時)が確かに入っていました。ですが、特に影響はありませんでした。 今後のためにも自分で調べてみたいと思います。
|