JS 中函式名後面加與不加括號的區別

葉子玉發表於2018-04-06
1         a.onmouseover = fn1;
2         a.onmouseout = fn2;
3         function fn1(){
4             div.className = "erweima show";
5         }
6         function fn2(){
7             div.className = "erweima hide";
8         }

只要呼叫函式進行執行,都必須加括號。

函式是一個物件,函式名是指向這個物件的指標。

函式名後面加上括號就表示立即呼叫執行這個函式裡面的程式碼。

使用不帶圓括號的函式是訪問函式的指標,而非呼叫函式。

 

函式名後面加括號,就直接執行函式返回值。

函式名後面不加括號,表示函式名賦值給click等的事件,觸發click事件時才會執行此函式名對應的函式。

相關文章