()()函數自執行操做:函數
若是你這麼寫 function test(){ io
alert("");編譯
}(); 這段代碼會報編譯錯誤,由於你的函數沒有被()包裹起來,改爲function
(function test(){ test
alert("");原理
})(); 就能夠執行,錯誤
原理是 () 是一個表達式,用()包裹的函數已是一個表達式了,因此能夠馬上執行,同理 在函數前加上~ ! - + 均可以把函數變成表達式,也就能夠馬上執行了,
例子:~function test(){
alert(「」);
}(); 一樣能夠執行