Array.filter vs jQuery.filter vs custom Array.where (v7)

Revision 7 of this benchmark created on


Preparation HTML

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js">
</script>

Setup

// Add array.where implementation
    Array.prototype.where = Array.prototype.where || function(predicate) {
      var results = [],
          len = this.length,
          i = 0;
    
      for(; i < len; i++) {
        var item = this[i];
        if (predicate(item)) {
          results.push(item);
        }
      }
    
      return results;
    };
    
    // Generate test array
    window.array = (function() {
      var arr = [];
      for (var i = 0; i < 100; ++i) {
        arr.push(i);
      }
    
      return arr;
    }());

Test runner

Ready to run.

Testing in
TestOps/sec
Array.filter
array.filter(function(el) {
  return el % 2 === 0;
});
ready
jQuery.filter
jQuery(array).filter(function(el) {
  return el % 2 === 0;
});
ready
Array.where
array.where(function(el) {
  return el % 2 === 0;
});
ready

Revisions

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