Jak policzyć całkowitą liczbę zegarków na stronie?
Czy istnieje sposób, w JavaScript, aby policzyć liczbę kątowych zegarków na całej stronie?
UżywamyBatarang, ale nie zawsze odpowiada naszym potrzebom. Nasza aplikacja jest duża i jesteśmy zainteresowani wykorzystaniem automatycznych testów, aby sprawdzić, czy liczba zegarków nie wzrośnie zbytnio.
Przydatne byłoby również zliczanie zegarków według poszczególnych kontrolerów.
Edytować: oto moja próba. Liczy zegarki we wszystkim z klasą ng-scope.
(function () {
var elts = document.getElementsByClassName('ng-scope');
var watches = [];
var visited_ids = {};
for (var i=0; i < elts.length; i++) {
var scope = angular.element(elts[i]).scope();
if (scope.$id in visited_ids)
continue;
visited_ids[scope.$id] = true;
watches.push.apply(watches, scope.$watchers);
}
return watches.length;
})();