データベースなんかで日付を取得すると 2010-04-28 みたいに年月日の区切りが / ではなく - になることが多い。
これをJavaScriptでDateオブジェクトにして使うとき
// IEで動作しない str = '2010-04-28 12:34:56'; dd = new Date(str);
このままだとDateオブジェクトで使うときにIEで使えない。(NaNになる)
そこで - を / に変換してから使う。
str = '2010-04-28 12:34:56'; dd = new Date( str.replace(/-/g,'/') );
日付の形式 | IE | Opera | FireFox |
---|---|---|---|
2010-04-28 | ×使えない | ○使える | 調べてない |
2010/04/28 | ○使える | ○使える | 調べてない |
2010/04-28 | ○使える | ×使えない | 調べてない |
replaceするときは正規表現を使わないとだめ
JavaScript : String.replace 関数の悪夢
// Operaで動作しない str = '2010-04-28 12:34:56'; dd = new Date( str.replace('-','/') );
2010/04-28みたいに中途半端になって、今度はIEでだけ通用する日付書式になってしまう