Promise vs Callback

JavaScript performance comparison

Revision 28 of this test case created by tsvetomir

Preparation code

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

      
<script>
Benchmark.prototype.setup = function() {
  var cb = function(deferred) {
    deferred.resolve();
  };
  
  var promise = function(deferred) {
    new Promise(function(resolve) {
      resolve('data');
    }).then(function() {
        deferred.resolve();
    });
  };
  
  var jqPromise = function(deferred) {
    new $.Deferred(function(promise) {
      promise.resolve('data');
    }).then(function() {
        deferred.resolve();
    });
  };

};
</script>

Preparation code output

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
Callback
// async test
cb(deferred);
pending…
Promise
// async test
promise(deferred);
pending…
$.Deferred
// async test
jqPromise(deferred);
pending…

Compare results of other browsers

Revisions

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

0 Comments