常見定義函數的方法 函數
使用函數語句來定義,語法以下: spa
使用函數表達式來定義,語法以下: 對象
這是由於function語句在解析時會發生被提高的狀況。也就是說無論function被放置在哪裏,它都會被移動到被定義時所在做用域的頂層。這樣的後果就是放寬了函數必須先聲明後使用的要求。 作用域
也就是說函數聲明方式在代碼執行以前(解釋期)被加載到做用域中,匿名函數方式則需在代碼執行時(運行期)加載。 io
最經常使用的對象是將全局對象window做爲參數傳進去,這樣函數或變量就成爲全局函數和變量了。不少庫函數都是這樣來定義的,jQuery整個庫定義都位於匿名自執行函數中,並傳遞window做爲參數: function