建立
在建立控制器或指令時,AngularJS會用$injector建立一個新的做用域,並在這個新建的控
制器或指令運行時將做用域傳遞進去。編程
連接
當Angular開始運行時,全部的$scope對象都會附加或者連接到視圖中。全部建立$scope對
象的函數也會將自身附加到視圖中。這些做用域將會註冊當Angular應用上下文中發生變化時需
要運行的函數。
這些函數被稱爲$watch函數,Angular經過這些函數獲知什麼時候啓動事件循環。函數
更新
當事件循環運行時,它一般執行在頂層$scope對象上(被稱做$rootScope),每一個子做用域
都執行本身的髒值檢測。每一個監控函數都會檢查變化。若是檢測到任意變化,$scope對象就會觸
髮指定的回調函數。 對象
銷燬
當一個$scope在視圖中再也不須要時,這個做用域將會清理和銷燬本身。
儘管永遠不會須要清理做用域(由於Angular會爲你處理),可是知道是誰建立了這個做用域
仍是有用的,由於你可使用這個$scope上叫作$destory()的方法來清理這個做用域。繼承
指令在AngularJS中被普遍使用,指令一般不會建立本身的$scope,但也有例外。好比
ng-controller和ng-repeat指令會建立本身的子做用域並將它們附加到DOM元素上。生命週期
除了孤立做用域外,全部的做用域都經過原型繼承而來,也就是說它們均可以訪問父級做用
域。若是熟悉面向對象編程,對這個機制應該不會陌生。事件
mustHaveExpression(布爾型):若是將這個參數設爲true,當傳入的字符串中不含有表
達式時會返回null。 ip
trustedContext(字符串) :AngularJS會對已經進行過字符插值操做的字符串經過
$sec.getTrusted()方法進行嚴格的上下文轉義。作用域