簡體   English   中英

變量中的javascript匿名函數

[英]javascript anonymous function in variable

最近幾天,我對javascript中的匿名函數很感興趣,因此我開始“探索”諸如jquery的框架,在第一行中,我看到了這段代碼:

var jQuery = (function() { .. functions .. }();

然后想到一個問題-該代碼的目的是什么? 為什么一個變量包含匿名函數? 該var有什么用? 是功能容器之類的東西嗎? 如果是如何訪問功能?

該代碼的目的是什么?

您實際上缺少使該代碼有效的javascript的右括號:

var jQuery = (function() { ... })();

它定義了一個匿名函數並立即執行,將其結果存儲在變量中。

您可以這樣想:

var jQuery = foo();

只是他們不必費心將foo定義為外部函數,因為他們不需要在代碼中的其他地方調用它。 因此,他們將其定義為匿名函數。

通過執行此操作,將對該匿名函數內部聲明的所有內容進行范圍划分,並且只能由包含的匿名函數訪問。 外部無法訪問。

通過減小該函數所有內容的作用域,可以防止在全局作用域中可能發生的沖突,意外吊起,並最大程度地減少附加到窗口對象的附加對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM