답변:
scope.$digest()현재 범위와 모든 하위 항목에서도 감시자를 발사합니다. scope.$apply전달 된 함수를 평가하고 $rootScope.$digest().
첫 번째는 현재 범위와 그 하위에 대한 감시자를 평가해야하기 때문에 더 빠릅니다. 두 번째는 감시자 $rootScope와 모든 하위 범위 를 평가해야하기 때문에 더 느립니다 .
감시자 중 하나에서 오류가 발생하여를 사용하면 서비스 scope.$digest를 통해 처리되지 않으므로 $exceptionHandler직접 예외를 처리해야합니다. 내부적 scope.$apply으로 try-catch블록을 사용하고 모든 예외를 $exceptionHandler.
$digest현재 범위의 감시자뿐만 아니라 모든 자식에게도 화재를 일으 킵니다.
문서 자체에 언급 된 것처럼 $ digest주기는 언제든지 수행 $scope.$apply됩니다. 범위 에 대한 개발자 가이드에 따라
식을 평가 한 후 $ apply 메서드는 $ digest를 수행합니다. $ digest 단계에서 스코프는 모든 $ watch 표현식을 검사하고 이전 값과 비교합니다.
그리고 Scope API 문서에 따라
일반적으로 컨트롤러 또는 지시문에서 직접 $ digest ()를 호출하지 않습니다. 대신 $ apply ()를 호출하면 (일반적으로 지시문 내에서) $ digest ()가 강제 실행됩니다.
따라서 명시 적으로를 호출해서는 안되며 메서드 $digest를 호출 $apply하면 다이제스트주기가 트리거됩니다.
$digest도 범위의 어린이라고?