Boolean Truth

Benchmark created by Bo Shields on


Setup

var u1 = {
      state: 'pa',
      city: 'pitt'
    };
    
    var ca1 = {
      id: 1,
      targets: [{
        criteria: 'state',
        op: 'eq',
        value: 'pa'
      }, {
        criteria: 'city',
        op: 'neq',
        value: 'pitt'
      }]
    };
    
    var u2 = {
      cr123: true,
      cr456: false
    };
    
    var ca2 = {
      id: 2,
      targets: [
        'cr123',
        'cr456'
      ]
    };
    
    var caa1 = [];
    var caa2 = [];
    for (x = 100; x > 0; x--) {
      caa1.push(ca1);
      caa2.push(ca2);
    }

Test runner

Ready to run.

Testing in
TestOps/sec
Boolean
caa2.forEach(function(campaign) {
  var targeted = campaign.targets.every(function(criteria) {
    return u2[criteria];
  });
});
ready
String
caa1.forEach(function(campaign) {
  var targeted = campaign.targets.every(function(criteria) {
    switch (criteria.op) {
      case 'eq':
        return (u1[criteria.criteria] === criteria.value);
        break;
      case 'neq':
        return (u1[criteria.criteria] !== criteria.value);
        break;
    }
  });
});
ready

Revisions

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

  • Revision 1: published by Bo Shields on