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

2021-07-28 10:17:15 字數 364 閱讀 7861

function fun()

var a=fun

var b=fun()

js中我們把以上**加粗的部分叫做函式,函式是一種叫做function引用型別的例項,因此函式是乙個物件。物件是儲存在記憶體中的,函式名則是指向這個物件的指標。

var a = fun 表示把函式名fun這個指標拷貝乙份給變數a,但是這不是指函式本身被複製了乙份。

就好比,地圖上上海市(對應函式物件)只有乙個,但指向上海市的路標(對應指標)有很多,而且你還可以繼續新增(複製)無數個指向上海市的路標,但上海市本身不會被複製。

如果函式名後面加上圓括號就表示立即呼叫(執行)這個函式裡面的**(花括號部分的**)。

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

例如 1 a.onmouseover fn1 2 a.onmouseout fn2 3 function fn1 6 function fn2 只要呼叫函式進行執行,都必須加括號。函式是乙個物件,函式名是指向這個物件的指標。函式名後面加上括號就表示立即呼叫執行這個函式裡面的 使用不帶圓括號的函式是訪...

JS中函式名後面的括號加與不加的區別和作用?

function fun var a fun var b fun js中我們把以上 加粗的部分叫做函式,函式是一種叫做function引用型別的例項,因此函式是乙個物件。物件是儲存在記憶體中的,函式名則是指向這個物件的指標。var a fun 表示把函式名fun這個指標拷貝乙份給變數a,但是這不是指...

函式呼叫加括號與不加括號的區別

寫在前面 最近做的乙個專案用是很久之前的,在維護專案中就無法使用vue等技術來操作,所以一些方法用的是原生來寫的,在繫結點選方法時,方法名沒加括號,就沒生效,加了括號就生效了,當時有疑惑的點是在之前做vue的專案中,我記得不加括號也是完全可以的,於是就詳細的查了一下。在script裡寫方法,不加括號...