你曾經在引擎蓋下的JQuery的1.4源代碼採取一看,發現它是如何封裝在以下方式:JavaScript/JQuery語法如何工作:(函數(窗口,未定義){})(窗口)?
(function(window, undefined) {
//All the JQuery code here
...
})(window);
我讀過JavaScript Namespacing的文章,另一個叫「An Important Pair of Parens ,「所以我知道一些關於這裏發生的事情。
但我從來沒有見過這種特殊的語法。那是什麼undefined
在那裏?爲什麼window
需要通過,然後再次出現在最後?
我想補充說,保羅愛爾蘭在這個視頻中談到這件事:http://paulirish.com/2010/10-things-i-learned-from-the-jquery-source/ – Mottie 2011-02-09 13:51:32
@Bergi你標記我的問題作爲另一個副本,但我在重複前一年問了問題。演員應該是相反的。 – dkinzer 2014-07-16 23:33:40
@dkinzer:這不是關於被問及的問題,而是關於最高質量的答案。無可否認,在這種情況下,它是脖子和脖子,但我發現CMS的答案是最好的。請參閱http://chat.stackoverflow.com/rooms/17/來討論這個問題,儘管 – Bergi 2014-07-16 23:49:37