總結-全局環境&執行流程&錯誤類型&垃圾回收機制&閉包&函數&回調函數

全局環境&執行流程&錯誤類型&垃圾回收機制&閉包&函數&回調函數
	全局環境
		1.函數中的this表示改函數所屬的對象
		2.window對象的成員在調用時能夠省略window
	執行流程
		1.編譯代碼:當前script代碼段,檢查語法、詞法是否有錯誤,加載到內存中準備執行
		2.執行代碼:執行代碼,在執行下一個帶有script的代碼段
	錯誤類型
		1.編譯錯誤:簡單理解爲語法錯誤,錯誤所在的script代碼段錯誤,影響該代碼段所有終止執行,可是不會影響其餘代碼段
		2.執行類型錯誤:調用上的錯誤,好比調用一個不存在的函數,帶代碼段以前的正常執行,以後的不執行,不影響其餘代碼段
	 JS垃圾回收機制
		什麼是垃圾回收機制:代碼在執行的時候,會將代碼加載到內存中,也就是聲明變量,若是變量或函數沒有用了,瀏覽器會根據它的垃圾回收機制自動回收不在使用的變量。
		JS垃圾回收機制有兩種:
			1.引用計數形式,計數次數爲零,按期釋放內存
			2.標記清除機制,給內存標記,若是使用了內存,就將標記清除。按期將有標記的內存刪除
	閉包
		什麼是閉包?
			JS有兩鏈一包的說法,兩鏈是做用域鏈和原型鏈,一包就是閉包。
			閉包,指的是詞法表示包括不被計算的變量的函數,也就是說,函數可使用函數以外定義的變量。
		1.閉包會形成內存不會被釋放
		2.閉包使得函數外部能夠訪問內部的變量
		雖然閉包有不少好處,可是不建議你們常常使用閉包程序,可能會產生內存泄漏。
	函數進階
		1.函數是值
			凡是可使用值的地方均可以使用函數,函數只是一個能夠執行的值
		2.函數是對象
			函數也可使用對象那樣的點語法
		3.函數是函數
			arguments對象
				arguments對象,存在於函數的內部,它可以表達函數的實際參數(實參),除此之外,arguments對象還有一個屬性callee,它表示函數的名字,arguments的length屬性表示實參的個數。
	回調函數
		將函數做爲值傳遞給另外一個函數
相關文章
相關標籤/搜索