AngularJS Digest 1-2-5 vs 1-2-6 vs 1.2.7 (v5)

Revision 5 of this benchmark created on


Preparation HTML

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.4/angular.js"></script>
<script> angular125 = angular; angular = undefined;</script>

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.5/angular.js"></script>
<script> angular126 = angular; angular = undefined;</script>

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.7/angular.js"></script>
<script> angular127 = angular; angular = undefined;</script>

Setup

function createScopeTree(angular) {
      var rootScope = angular.injector(['ng']).get('$rootScope');
    
      for(var i=0; i < 100; i++) {
        var child = rootScope.$new();
        for(var j=0; j < 100; j++) {
          child.a = {b:{c:1}};
          child.$watch('a.b.c', function() {});
        }
      }
      return rootScope;
    }
    
    
    var ang125Scope = createScopeTree(angular125);
    var ang126Scope = createScopeTree(angular126);
    var ang127Scope = createScopeTree(angular127);

Teardown


    ang125Scope = null;
    ang126Scope = null;
    ang127Scope = null;
  

Test runner

Ready to run.

Testing in
TestOps/sec
Warmup 1.2.5
ang125Scope.$digest();
ready
1.2.5
ang125Scope.$digest();
ready
Warmup 1.2.6
ang126Scope.$digest();
ready
1.2.6
ang126Scope.$digest();
ready
Warmup 1.2.7
ang127Scope.$digest();
ready
1.2.7
ang127Scope.$digest();
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.