indirect eval call で、余計な変数を増やさない書き方
下記ページに、「余計な変数を増やさない書き方」として
var global = ("global",eval)("this");
と書かれていますが、意味が分からないので教えてください。
この記述でどうして別名で呼ぶことになるのでしょうか?
http://qiita.com/Hiraku/items/d249a2f2f13532748324
カンマ演算子は、2 番目のオペランドの値を返すから、
var global = eval("this");
????
理解できないので、質問追記します。
間接的に呼び出す、という意味は、カンマ演算子を処理すると
(evalを評価した結果)("this");
となるので、
eval("this");
とは異なる、ということでしょうか?
つまり、一旦変数eに入れず、(evalを評価した結果)("this");するってこと?
evalを評価した結果は、function eval() なので、function eval()("this");と同義?
最終的には、
eval("this");
と、
function eval()("this");
の違い、ということでしょうか?