[angularjs] Why do we use $rootScope.$broadcast in AngularJS?