3 回答

TA貢獻(xiàn)1752條經(jīng)驗(yàn) 獲得超4個(gè)贊
是的,區(qū)別在于將您的functionwithin(和)標(biāo)記括起來(lái)會(huì)使您的語(yǔ)句返回所述函數(shù),就好像您通過(guò)它的名稱調(diào)用它一樣。因此,您可以附加()并立即執(zhí)行它。
以下兩個(gè)語(yǔ)句產(chǎn)生相同的結(jié)果:
// 1
function myFunction(){
console.log("1")
}
myFunction();
// 2
(function myFunction(){
console.log("1")
})()
不可能在右括號(hào)之后立即調(diào)用函數(shù),因?yàn)樗鼤?huì)導(dǎo)致錯(cuò)誤Unexpected token ')':
function myFunction(){
console.log("1")
}() // Uncaught SyntaxError: Unexpected token ')'

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊
將函數(shù)包裹在括號(hào)“()”中的目的是命名空間和控制成員函數(shù)的可見(jiàn)性。
它將您的代碼包裝在函數(shù)范圍內(nèi)。
其中 '()' 后跟函數(shù)聲明是立即調(diào)用通常稱為 IIFE 的函數(shù)
添加回答
舉報(bào)