¿Cómo medir el tiempo que tarda una función en ejecutarse usando JavaScript?

Método 1: Usar el método performance.now(): El método now() de la interfaz de rendimiento devuelve una marca de tiempo de alta resolución cada vez que se llama durante el programa. El tiempo se puede medir obteniendo el tiempo de inicio antes de la función y el tiempo de finalización después de la función y luego restando ambos. Esto da el tiempo transcurrido para la función.

Sintaxis:

start = performance.now();
function_to_call();
 end = performance.now();

Ejemplo:

<!DOCTYPE html>
<html>
      
<head>
    <title>
        How to measure time taken by a function
        to execute using JavaScript?
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
      
    <b>
        How to measure time taken by a function
        to execute using JavaScript?
    </b>
      
    <p>
        Click on the button to measure the time
        taken by the function. The output would
        be displayed on the console.
    </p>
      
    <button onclick="measurePerformance()">
        Click to check
    </button>
      
    <script type="text/javascript">
        function measurePerformance() {
            start = performance.now();
            exampleFunction();
            end = performance.now();
            timeTaken = end - start;
            console.log("Function took " +
                    timeTaken + " milliseconds");
        }
  
        function exampleFunction() {
            for (i = 0; i < 1000; i++) {
                console.log('Hello Geeks');
            }
        }
    </script>
</body>
  
</html>                    

Producción:

  • Antes de hacer clic en el botón:
    performance
  • Después de hacer clic en el botón:
    performance_out

Método 2: Usar el método console.time(): Los métodos time() y timeEnd() del objeto Console podrían usarse como un temporizador para medir el tiempo transcurrido entre estos dos métodos. Toma un parámetro de etiqueta que podría usarse para distinguir entre varios temporizadores. Cada vez que se llama al método timeEnd(), el temporizador se detiene y la salida de tiempo se entrega a la consola.

Sintaxis:

console.time('label');
function_to_call();
console.timeEnd('label');

Ejemplo:

<!DOCTYPE html>
<html>
      
<head>
    <title>
        How to measure time taken by a function
        to execute using JavaScript?
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
      
    <b>
        How to measure time taken by a function
        to execute using JavaScript?
    </b>
      
    <p>
        Click on the button to measure the time
        taken by the function. The output would
        be displayed on the console.
    </p>
      
    <button onclick="measurePerformance()">
        Click to check
    </button>
      
    <script type="text/javascript">
        function measurePerformance() {
            console.time('function1');
            exampleFunction();
            console.timeEnd('function1');
        }
  
        function exampleFunction() {
            for(i= 0;i <1000; i++) {
                console.log('Hello Geeks');
            }
        }
    </script>
</body>
  
</html>                    

Producción:

  • Antes de hacer clic en el botón:
    consoleEnd
  • Después de hacer clic en el botón:
    console_out

Publicación traducida automáticamente

Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *