JS 關於自執行的匿名函式

2021-07-15 09:01:08 字數 455 閱讀 8511

1. 什麼是自執行的匿名函式?

它是指形如這樣的函式: (function )();

2. 疑問

為什麼(function )();可以被執行, 而function ();卻會報錯?

3. 分析

(1). 首先, 要清楚兩者的區別:

(function )是表示式, function 是函式宣告.

(2). 其次, js"預編譯"的特點:

js在"預編譯"階段, 會解釋函式宣告, 但卻會忽略表式.

(3). 當js執行到function() ();時, 由於function() 在"預編譯"階段已經被解釋過, js會跳過function(), 試圖去執行();, 故會報錯;

當js執行到(function )();時, 由於(function )是表示式, js會去對它求解得到返回值, 由於返回值是一  個函式, 故而遇到();時, 便會被執行.

js匿名自執行函式

匿名自執行函式 沒有方法名的函式 閉包 閉包是指有權訪問另乙個函式作用域變數的函式 通過乙個例項來解釋 從網上找到了乙個案例,使用了for迴圈 匿名自執行函式 settimeout。案例1 var value1 0,value2 0,value3 0 for var i 1 i 2 i 1 sett...

關於匿名函式自執行

賦值式 將匿名函式賦給變數 表示式定義法 宣告式 var fn 01 function fn 01 如果想呼叫fn 01函式,寫該函式的名稱,然後寫小括號就可以了 將乙個匿名函式用小括號括起來,後面加乙個小括號,表示匿名函式的自執行 可以防止變數汙染 function 帶引數的匿名函式自執行 fun...

JS匿名函式自執行函式

js匿名函式自執行函式 function function 這是乙個函式,函式後面接 則是呼叫函式 比如 function arg 4 則輸出4 好處 放在裡面,不會汙染外面的變數,也保護了自己,外面呼叫不了裡面的函式和變數。在js中寫大量 可以防止變數衝突和錯誤呼叫。外掛程式常用的是 functi...