time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

_createRelationalOperation.js (578B)


      1 var toNumber = require('./toNumber');
      2 
      3 /**
      4  * Creates a function that performs a relational operation on two values.
      5  *
      6  * @private
      7  * @param {Function} operator The function to perform the operation.
      8  * @returns {Function} Returns the new relational operation function.
      9  */
     10 function createRelationalOperation(operator) {
     11   return function(value, other) {
     12     if (!(typeof value == 'string' && typeof other == 'string')) {
     13       value = toNumber(value);
     14       other = toNumber(other);
     15     }
     16     return operator(value, other);
     17   };
     18 }
     19 
     20 module.exports = createRelationalOperation;