Factorial de un número con Javascript

Vamos a crear una función Javascript que nos imprima en consola el factorial de un número. Importante hacer todas las validaciones necesarias, ya que en este caso un número factorial sólo se obtiene de un número entero positivo, por lo que debemos validar que no se envíe ni un cero, ni un entero negativo…

La sintaxis es la siguiente

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Factorial de un número</title>
  </head>

  <body>
    <h1>Factorial de un número</h1>
    <p>El factorial se saca sólo con números enteros positivos</p>

    <script>
      const factorial = (numero = undefined) => {
        if (numero === undefined)
          return console.warn("No ingresaste un número");

        if (typeof numero !== "number")
          return console.error(`El valor ${numero} ingresado NO es un número`);

        if (numero === 0) return console.error("El número no puede ser cero");

        if (Math.sign(numero) === -1)
          return console.error("El número no puede ser negativo");

        let factorial = 1;

        for (let i = numero; i > 1; i--) {
          factorial *= i;
        }

        return console.info(`El factorial de ${numero} es ${factorial}`);
      };

      factorial(5);
    </script>
  </body>
</html>
Scroll al inicio