時々社内ニートのメモ 目指せ非プログラマー

案件がない時は社内ニートなだけだよ (もう何でもごじゃれ c, c++, c#, VB, java, php, javascript, sql, html, css 他)

javascript Array.forEachがIE8で使用できない時の対処法 (IE8以外の.forEach対応していないものを含む)

なんか他のブラウザではエラー出なかったのにIE8でエラー出た・・・

 

javascriptエラー!

 

・・・え・・・

 

連想配列をくるくる回すときにforEachを使っているのが問題のようでした。

調べてみると「forEach」のつかは最近だとか。

 

ここで「最近」っていつなんだろうとか思いつつ、IE8は対応していないようです。

 

そしてこちらにちゃんと対応方法が載っていました。

 

Array.forEach - JavaScript | MDN

 

上記ページの「互換性」の下の文章の後にあるコードをコピペでforEachが使えるようになります。

他のブラウザ(Chrome, FireFox)でも使えたのでエージェント分けとかはしなくていいみたいです。

ま、上記のページに書いているように「ECMA-262 第 5 版で定められたアルゴリズムと全く同じものです」と書いているので問題ないでしょう。

 

そういえば他のことについてもこんな感じで載ってたな。。。

 

IE8だけでスクリプトエラー出るときなんかはMDNのページで検索るといいかもしれませんね。