自執行函式,即定義和呼叫合為一體。
我們建立了乙個匿名的函式,並立即執行它,由於外部無法引用它內部的變數,因此在執行完後很快就會被釋放,關鍵是這種機制不會汙染全域性物件
常見格式:總結一下,執行函式的作用主要為匿名 和 自動執行,**在被解釋時就已經在執行了。(function() )();
// 下面2個括弧()都會立即執行
(function () ())
(function () )()
// 由於括弧()和js的&&,異或,逗號等操作符是在函式表示式和函式宣告上消除歧義的
// 所以一旦解析器知道其中乙個已經是表示式了,其它的也都預設為表示式了
var i = function () ();
true && function () ();
0, function () ();
// 如果你不在意返回值,或者不怕難以閱讀
// 你甚至可以在function前面加一元操作符號
!function () ();
~function () ();
-function () ();
+function () ();
// 還有乙個情況,使用new關鍵字,也可以用,但我不確定它的效率
//
new function ()
new function () () // 如果需要傳遞引數,只需要加上括弧()
js匿名自執行函式
匿名自執行函式 沒有方法名的函式 閉包 閉包是指有權訪問另乙個函式作用域變數的函式 通過乙個例項來解釋 從網上找到了乙個案例,使用了for迴圈 匿名自執行函式 settimeout。案例1 var value1 0,value2 0,value3 0 for var i 1 i 2 i 1 sett...
JS匿名函式自執行函式
js匿名函式自執行函式 function function 這是乙個函式,函式後面接 則是呼叫函式 比如 function arg 4 則輸出4 好處 放在裡面,不會汙染外面的變數,也保護了自己,外面呼叫不了裡面的函式和變數。在js中寫大量 可以防止變數衝突和錯誤呼叫。外掛程式常用的是 functi...
js匿名函式和立即執行函式
2.立即執行函式 匿名函式又叫拉姆達函式,使用前需要先賦值。hello 會報錯,因為定義在後,使用在前。varhello function hello hello外層函式型別 署名函式 匿名函式 變數可以訪問 可以訪問 屬性不能訪問 可以訪問 該類函式沒有宣告,直接執行,執行完立即釋放。一般做初始化...