鍍金池/ 問(wèn)答/HTML/ javascript中這兩個(gè)自執(zhí)行函數(shù)有什么區(qū)別?

javascript中這兩個(gè)自執(zhí)行函數(shù)有什么區(qū)別?

(function test(){
    console.log(123)
}())

(function test(){
    console.log(123)
})()


以上兩段代碼有什么區(qū)別呢?好像都能運(yùn)行?
回答
編輯回答
尛憇藌

(1 + 2) + 3 = ?
1 + (2 + 3) = ?

以上兩個(gè)算式有什么區(qū)別?貌似計(jì)算結(jié)果一樣?

2018年6月9日 15:18
編輯回答
安淺陌

準(zhǔn)確的說(shuō)上面的兩個(gè)是立即調(diào)用函數(shù),立即調(diào)用函數(shù)和自執(zhí)行函數(shù)的區(qū)別你可以查閱《深入理解javascript》的第4章立即調(diào)用的表達(dá)式。上面的兩個(gè)立即調(diào)用函數(shù)作用沒(méi)有區(qū)別,不過(guò)大多數(shù)推薦使用第一種,說(shuō)是作為一個(gè)整體更符合語(yǔ)義。

2018年7月24日 19:16
編輯回答
萌面人

區(qū)別:寫法不同。。。

2017年8月6日 18:10
編輯回答
涼汐

沒(méi)區(qū)別。加括號(hào)或其它是為了將函數(shù)聲明轉(zhuǎn)化為函數(shù)表達(dá)式,因?yàn)楹瘮?shù)聲明后面不能加括號(hào),函數(shù)表達(dá)式可以跟括號(hào)。

// 函數(shù)聲明
function foo() {}() // 出錯(cuò) 

所以無(wú)論加括號(hào)或其它都是一樣的。

2017年11月23日 14:48
編輯回答
孤星

沒(méi)有區(qū)別。

不光如此,還可以這么寫:
clipboard.png

2017年4月20日 07:00
編輯回答
耍太極

第一個(gè)是把實(shí)參帶入到函數(shù)體里面去執(zhí)行。

第二個(gè)是先計(jì)算函數(shù)體,把形參的地方留空?然后把實(shí)參帶進(jìn)去執(zhí)行。

(個(gè)人感覺(jué)。。)

2017年6月18日 02:24
編輯回答
只愛(ài)你

都是匿名函數(shù),效果沒(méi)差。

2017年11月11日 17:12
編輯回答
擱淺
;(function () {
    // 這個(gè)看起來(lái)更符合正常思維一些
})();
2018年6月21日 21:00