Estoy trabajando en una aplicación web que implica hacer algunos cálculos con JavaScript. En una prueba comparativa, encontré que Chrome es significativamente más rápido que Firefox en términos de tiempo de ejecución. Cuando ejecuto la herramienta de análisis de rendimiento integrada en ambos navegadores, descubrí que Firefox pasó mucho tiempo en esta función mientras que Chrome no.
// compute n choose k function choose(n, k) { k = Math.min(n - k, k); let res = 1; for (let i = 1; i <= k; i++) { res *= n - k + i; res /= i; } return res; } Dado que mi aplicación invocará esta función en el orden de magnitud de 10^7 veces cada una con n <= 40 y k <= 10 durante el punto de referencia, sospecho que el motor de JavaScript de Chrome almacenará en caché el resultado de esta función (ya que es determinista y no tiene efectos secundarios) mientras que Firefox no los tiene. Sin embargo, no estoy lo suficientemente familiarizado con las partes internas de esos 2 motores de JavaScript para estar seguro. Se agradece si alguien puede proporcionar una explicación más detallada.
Además, ¿cómo debo cambiar mi código o la configuración del navegador para que funcione más rápido en Firefox?