最近JavaScriptでハマったこと(メモ)


最近ハマった初心者的罠のメモ。

連想配列のカンマ

IE7以下だと下記のようなJavaScriptコードは構文エラーになる。

dataLayer.push({
    "a" : "aaa",
    "b" : "bbb",
    "c" : "ccc",
});

⇒連想配列の最後の要素の後にカンマを付けてはいけない。

IE8以上や他のブラウザではエラーにならないので気付きにくい><

参考:http://dqn.sakusakutto.jp/2012/05/javascript-last-comma.html

タイムスタンプの日付フォーマット

下記コードで日付を取得すると、ブラウザによってフォーマットがバラバラになる。

var date = new Date();
var now = date.toLocaleString();
// 2015/03/18 16:53:10
// 2015年3月18日 16:53:10 JST
// WED MAR 18 2015 16:53:10 GMT+0900 (JST)

⇒date.getMonth(), date.getDate()等でそれぞれ取得して自分でフォーマットを揃える。