isEven: Overly Complicated vs Simple

Two functions, same result. One uses needless recursion, the other uses simple modulo.

Live Demo

Overly Complicated Recursive Version

function isEvenComplicated(n) {
  // Handle negative numbers by converting to positive
  if (n < 0) return isEvenComplicated(-n);
  
  // Base case: 0 is even
  if (n === 0) return true;
  
  // Base case: 1 is odd
  if (n === 1) return false;
  
  // Recursive case: subtract 2 and check again
  return isEvenComplicated(n - 2);
}
Enter a number to see the result

Simple Modulo Version

function isEvenSimple(n) {
  return n % 2 === 0;
}
Enter a number to see the result

Test with Pre-selected Numbers

Click a number to test both functions:

Summary Table (First 10 Numbers)

Number Complicated Version Simple Version Match?