Hi Ben,

Consulting the source provides you with the ultimate answers. 

   1. They are executed on the spot. here you can find 
   
<https://github.com/angular/angular.js/blob/master/src/ng/rootScope.js#L1080> 
   the exact details 
   2. Wrong, only those that are used in a 2-way binding, or manually 
   watched upon. 
   3. No, well, not entirely. Arrays and Objects are passed by reference, 
   so those are not copies, rather than direct references. other primitives 
   are indeed copied. 
   4. $scope.$watch("array.length", function (l) {console.log('new 
   length:',l)}). There are other way’s, but this one is IMHO the most 
   straightforward. 

Regards
Sander
​

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to