@__gfx__さんがhttp://d.hatena.ne.jp/gfx/20120223/1329996834:JavaScriptのthisの扱いが難しすぎる件という記事を書いていたので見てみました。 いろいろなケースでthisに何がなぜ設定されるのかが分からない、というものです。以下転載。 var o = {}, tmp; o.f = function() { console.log(this.toString()) }; o.toString = function() { return "o" }; o.f.toString = function() { return "o.f" }; (function(){ return this })().toString = function() { return "global"; }; o.f(); // o (o.f)(); // o