Cómo medir el tiempo tomado por una función para ejecutar?

Cómo medir el tiempo tomado por una función para ejecutar?

Medición del tiempo, una función toma para ejecutar un aspecto importante del monitoreo y la optimización del rendimiento en el desarrollo de software. Por ejemplo, para los desarrolladores que tienen múltiples implementaciones para la misma función, medir su tiempo de ejecución puede ayudarlos a comparar su rendimiento y elegir el más eficiente.

Este blog describirá las formas de medir el tiempo tomado por una función durante la ejecución.

Cómo medir el tiempo para ejecutar una función?

Los siguientes métodos se utilizan para medir el tiempo tomado por una función durante la ejecución:

  • Fecha.ahora () método.
  • actuación.ahora () método.
  • consola. Método Time ().

Método 1: mida el tiempo para ejecutar una función utilizando "fecha.método ahora () "

Utilizar el "Fecha.ahora()Método para medir el tiempo que toma por cualquier función para ejecutar. Este método proporciona la marca de tiempo actual a medida que transcurrió el número de milisegundos desde el 1 de enero de 1970 UTC o la época Unix.

Ejemplo

Primero, defina una función llamada "concurrido"Eso imprime números de 0 a 10:

función func ()
para (deja i = 0; yo <=10; i++)
consola.log (i);

Llamar a la fecha.ahora () método para obtener la hora de inicio de la función:

var inicio = fecha.ahora();

Invoca la función definida entre el "comenzar" y "fin"Himestamps:

func ();

El tiempo transcurrido se calcula restando la hora de inicio desde la hora final. Para la hora de finalización, llame a la fecha.ahora () método nuevamente y reste la hora de inicio desde él:

VAR ESCUCIONTIME = Fecha.ahora empezar;

Finalmente, imprima el tiempo transcurrido en la consola para su análisis:

consola.log ("El tiempo de ejecución de la función para la impresión de los números 0 a 10 es:" + Ejiempo de ejecución + "milisegundos");

Se puede ver que la función lleva 1 ms a imprimir números de 0 a 10:

Método 2: mida el tiempo para ejecutar una función utilizando "rendimiento.método ahora () "

Para medir el tiempo de ejecución de una función, use el "actuación.ahora()" método. Proporciona una marca de tiempo de alta resolución que mide el tiempo transcurrido en milisegundos con una precisión de hasta milésimas de milisegundo.

El "Fecha.ahora()El método "devuelve el tiempo del sistema, mientras que el"actuación.ahora()"El método está diseñado específicamente para medir el tiempo transcurrido entre dos puntos. A menudo se usa para el monitoreo y la evaluación comparativa del rendimiento, ya que puede proporcionar información de tiempo más precisa que otros métodos.

Ejemplo

Llama a "actuación.ahora()Método para iniciar el tiempo de ejecución de la función:

var startExecutionTime = rendimiento.ahora();

Invocar la función entre el tiempo de inicio y el final:

func ();

De nuevo, llame al "actuación.ahora()Método para finalizar el tiempo de ejecución:

VAR ESCUCIONTIMEEND = Performance.ahora();

Resta la hora de inicio desde la hora de finalización para obtener el tiempo de ejecución:

VAR EJECUTIONTIME = EJECUTIVE TIMEEND - STARTEXECUTIONTIME;

Por último, imprima la marca de tiempo transcurrida precisa en la consola:

consola.log ("El tiempo de ejecución de la función para la impresión de los números 0 a 10 es:" + Ejiempo de ejecución + "milisegundos");

Producción

Método 3: Medir el tiempo tomado por una función para ejecutar utilizando "Consola.método de tiempo () "

Otra forma de medir el tiempo de ejecución por una función es el "consola.tiempo()" método. Se utiliza para comenzar un temporizador para medir la duración de una determinada operación. La consola.El método Time () toma una cadena como argumento, que etiqueta el temporizador e inicia el temporizador.

Es crucial notar que la etiqueta del temporizador pasó al "consola.tiempo()"El método debe coincidir con la etiqueta pasada al"consola.Timeend ()" método. Si las etiquetas no coinciden, la consola.El método de Timeend () no detendrá el temporizador y la salida será incorrecta.

Ejemplo

Llamar a la consola.Método Time () Para iniciar el temporizador para medir la ejecución de la función de la función:

consola.tiempo ('tiempo de ejecución para imprimir números 0 a 10');

Invocar la función para ejecutar:

func ();

Detén el temporizador con la consola.método timeend ():

consola.TIEMPLEEND ('Tiempo de ejecución para imprimir números 0 a 10');

Se puede observar que la función toma "1.670166015625ms":

Hemos compilado todos los enfoques para medir el tiempo tomado por una función para ejecutar.

Conclusión

Para medir el tiempo tomado por una función para la ejecución, use el "Fecha.ahora () "," Performance.ahora()", o el "consola.tiempo()" método. El desempeño.El método ahora () proporciona información de tiempo más precisa que otros métodos porque tiene una mayor precisión y no se ve afectado por los cambios de tiempo del sistema. Sin embargo, la consola.El método Time () sigue siendo útil para mediciones de tiempo rápidas y convenientes durante el desarrollo o la depuración. Este blog describió diferentes métodos para medir el tiempo tomado por una función durante la ejecución.