javascriptエラー:undefined is not an object (evaluating XXX)の対処法

「undefined is not an object (evaluating XXX)」ってのが出たので原因究明をしました。

スポンサーリンク

javascriptを動かしたらエラーが出ました

プログラム

久しぶりにjavascriptを動かしていたらエラーがでました。

javascriptを久しぶりに動かそうと思った動機は、この「ohajiki」なるwebブラウザアプリです。

Ohajiki D Web Browser

Ohajiki D Web Browser
開発元:Shingo Fukuyama
無料
posted withアプリーチ

自分はiPhoneで使ってるんですが、このアプリ、grease monkey的に、サイトの読み込み前後でjavascriptを走らせることができるんです!素晴らしい!おすすめです!無料版もあるのでぜひお試しください。無料版でもユーザースクリプト動かせますよ!ってことでふんふん自分でスクリプト組んでたらこのザマです。まぁ、とはいえよくある事なんで、解決していきましょう。

エラーの対応内容

さてエラー内容はというと、タイトルにも書きました通り

undefined is not an object (evaluating XXX)

です。さて、ググってみますとどうもこのエラー、メンドクサそうです。というのもいろいろな理由でこのエラーは上がるみたいで…ググってもみんな悩んでるみたいですし、それぞれ原因違いそうです。

とまぁ紆余曲折書いてもしょうがないんで結論から書きますと

forループが回り過ぎてた

です。なんとも初歩的かつお恥ずかしい…for分が一回多く回り、次の配列要素を評価しに行った時に「なんじゃこりゃぁ!」ってなったようです。

まとめ

以上、今回の「undefined is not an object」対処法でした。先述しました通り、あくまでこれは一対処方法ですので、for文なんて使ってなかったら他を当たってください。