JS函式中帶與不帶括號的區別

2021-09-02 11:02:41 字數 852 閱讀 9784

js函式中帶與不帶括號的區別

其實總結起來如下:

函式只要是要呼叫它進行執行的,都必須加括號。此時,函式()實際上等於函式的返回值。當然,有些沒有返回值,但已經執行了函式體內的行為,這個是根本,就是說,只要加括號的,就代表將會執行函式體**。

不加括號的,都是把函式名稱作為函式的指標,用於傳參,此時不是得到函式的結果,因為不會執行函式體**。它只是傳遞了函式體所在的位址位置,在需要的時候好找到函式體去執行。

所以一般時候我們都是採用的是無括號的原因。這也是由於括號的二義性,因為括號是「函式呼叫運算子」,相當於在執行這樣乙個函式,所以產生的問題在理解了之後也就理解了。

另外:除了兩邊不加括號,也可以兩邊都加括號來實現函式的拷貝,而不是執行函式,如果左邊無圓括號右邊有圓括號,實際就是相當於產生的是乙個屬性而不是乙個方法了,在呼叫的時候只用屬性名或者函式名,而不需要再用函式呼叫運算子圓括號了,因為它就相當於乙個屬性,當然也可以用函式呼叫的方式來呼叫,加上括號,拿上例子來說就是如果寫成person.sayhello =sayhi(),在呼叫sayhello的時候就可以直接用person.sayhello或者person.sayhello()了,二者都實現相同的效果。

get 是函式自身, get() 是執行函式

var x=get;

那麼 x 和 get 是等同的

var x=get();

那麼 x 是 函式 get 的返回值

例如 function get()

var x=get(); 那麼 x 就等於 1 咯

如果是

var x=get;

那麼var y=x(); 和 var y=get(); 都是等價的。

.

JS函式中帶與不帶括號的區別

js函式中帶與不帶括號的區別 其實總結起來如下 函式只要是要呼叫它進行執行的,都必須加括號。此時,函式 實際上等於函式的返回值。當然,有些沒有返回值,但已經執行了函式體內的行為,這個是根本,就是說,只要加括號的,就代表將會執行函式體 不加括號的,都是把函式名稱作為函式的指標,用於傳參,此時不是得到函...

js函式呼叫帶括號和不帶括號的區別

1.帶括號 只要是呼叫函式進行執行的,都帶括號。返回的結果是返回值或者執行結果。當然,有些沒有返回值,但已經執行了函式體內的行為,就是說,加括號的,就代表將會執行函式體 function sayhello alert 豬年大吉 console.log sayhello 2.不帶括號 不加括號的,都是...

Python中類 帶括號與不帶括號的區別

有時候看到群裡一些人問一些基礎的知識,雖然很基礎,網上隨便一查即可知道,但是往往很多人就是連這些基礎的知識都很模糊,甚至不清楚,這裡再來複習一下python中類的乙個知識點 僅此 用來描述具有相同的屬性和方法的物件的集合。它定義了該集合中每個物件所共有的屬性和方法。物件是類的例項。舉個生活栗子,乙個...