Por que usamos $ rootScope. $ Broadcast no AngularJS?

Tentei encontrar algumas informações básicas para o AngularJS$rootScope.$broadcast, Mas a documentação do AngularJS não ajuda muito. Em palavras fáceis, por que usamos isso?

Além disso, dentro de John PapaToalha quente modelo, há uma função personalizada no módulo comum chamado$broadcast:

function $broadcast() {
    return $rootScope.$broadcast.apply($rootScope, arguments);
}

Eu não entendi o que isso está fazendo. Então, aqui estão algumas perguntas básicas:

1) O que faz$rootScope.$broadcast Faz?

2) Qual é a diferença entre$rootScope.$broadcast e$rootScope.$broadcast.apply?

questionAnswers(5)

yourAnswerToTheQuestion