Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36
Chrome 63
Windows
Other
2025 years ago
Test name Executions per second
looping 4339432.5 Ops/sec
filtering 9.9 Ops/sec
Script Preparation code:
AخA
 
var arr = new Array(1000000);
arr.fill(10);
arr[5] = 1
Tests:
  • looping

    x
     
    function findOutlier(integers){
      //your code here
      var test;
      let i = 0;
      let len = integers.length;
      
      if ((integers[0] % 2 == 0 || integers[1] % 2 == 0) && (integers[2] % 2 == 0 || integers[3] % 2 == 0)) {
          // outlier is odd
          test = function(int) {
            return int % 2 !== 0;
          }
      } else {
          // outlier is even
          test = function(int) {
            return int % 2 === 0;
          }
      }
      
      for(i;i < len;i++) {
        if (test(integers[i])) {
          return integers[i]
        }
      }
        
    }
    findOutlier(arr);
  • filtering

     
    function findOutlier(int){
      var even = int.filter(a=>a%2==0);
      var odd = int.filter(a=>a%2!==0);
      return even.length==1? even[0] : odd[0];
    }
    findOutlier(arr)