2012-05-12 114 views
2

,我讀了一doT.jsline在逗號分隔的數字/函數在括號中的JavaScript?

var global = (function(){ return this || (0||eval)('this'); }()); 

這是minified後:

l=function(){return this||(0,eval)("this")}(); 

那麼什麼是(0,eval),我的意思是什麼逗號呢?

我在Chrome的控制檯,(0,1)(2,1)(2,{})2,1等播放時,它總是返回最後一個。

+2

我們知道他們爲什麼首先使用'(0 || eval)'嗎? – Ashe

+0

很可能讓代碼分析器關閉他們使用邪惡'eval'的事實。但我和你一樣困惑。 – btown

+2

@Len他們想要一個「間接調用eval'」:https://github.com/olado/doT/issues/26#issuecomment-5669788 –

回答