Esta publicación es un poco Friki (lo sé) 😎, pero quiero mostrarles 3 formas de saber si un número es par o no con JavaScript (bueno, en realidad 2 formas, por que la primera es la que todos conocemos)

1. Operador Módulo (%)

El operador % en JavaScript devuelve el resto de la división de un número por otro. Para verificar si un número es par, podemos usar % 2. Si el resto es igual a 0, entonces el número es par.

Ejemplo:

function esPar(numero) {
  return numero % 2 === 0;
}

console.log(esPar(4));  // true
console.log(esPar(7));  // false

Explicación:

  • numero % 2: Calcula el resto de la división de numero entre 2.
  • === 0: Compara el resultado con 0 para determinar si es par.
  • Si numero % 2 es 0, significa que numero es divisible exactamente por 2, por lo tanto, es par.

Ejemplo detallado:

Para numero = 4:

  • 4 % 2 da como resultado 0.
  • Por lo tanto, 4 es par.

Para numero = 7:

  • 7 % 2 da como resultado 1.
  • Por lo tanto, 7 no es par.

2. Operador Bitwise AND (&)

El operador bitwise & realiza una operación AND bit a bit entre dos números. Para determinar si un número es par, podemos usar numero & 1 === 0. Esto se debe a que el bit menos significativo (el último bit) de un número par siempre es 0 en binario.

Ejemplo:

function esPar(numero) {
  return (numero & 1) === 0;
}

console.log(esPar(4));  // true
console.log(esPar(7));  // false

Explicación:

  • numero & 1: Realiza una operación AND bit a bit entre numero y 1.
  • (numero & 1) === 0: Comprueba si el resultado es igual a 0 para determinar si numero es par.
  • Si el último bit de numero es 0, entonces numero es par.

Ejemplo detallado:

Para numero = 4:

  • En binario, 4 es 100. 
  • 1 en binario es 001.
  • 4 & 1 realiza una operación AND bit a bit: 100 & 001 resulta en 000 (que es 0 en decimal). 
  • Por lo tanto, 4 es par.

Para numero = 7:

  • En binario, 7 es 111.
  • 7 & 1 realiza una operación AND bit a bit: 111 & 001 resulta en 001 (que es 1 en decimal).
  • Por lo tanto, 7 no es par.

3. División Entera y Comparación

Otra forma de verificar si un número es par es dividir el número por 2, redondear hacia abajo utilizando Math.floor, y luego multiplicar el resultado nuevamente por 2. Si el resultado es igual al número original, entonces el número es par.

Ejemplo:

function esPar(numero) {
  return Math.floor(numero / 2) * 2 === numero;
}

console.log(esPar(4));  // true
console.log(esPar(7));  // false

Explicación:

Math.floor(numero / 2): 

  • Divide numero por 2 y redondea hacia abajo para obtener el cociente entero.
  • * 2: Multiplica el resultado por 2.
  • === numero: Compara este resultado con el número original para determinar si numero es par.
  • Si numero dividido por 2 y multiplicado por 2 es igual a numero, entonces numero es par.

Ejemplo detallado:

Para numero = 4:

  • 4 / 2 da como resultado 2.
  • Math.floor(2) da como resultado 2.
  • 2 * 2 da como resultado 4.
  • Por lo tanto, 4 es par.

Para numero = 7:

  • 7 / 2 da como resultado 3.5.
  • Math.floor(3.5) da como resultado 3.
  • 3 * 2 da como resultado 6.
  • Por lo tanto, 7 no es par.

Esta publicación esta enfocada en ayudar a generar nuevos conocimientos y lógica de programación, espero que les sea de utilidad.