I need to get execution time in milliseconds.
Note: I originally asked this question back in 2008. The accepted answer then was to use new Date().getTime()
However, we can all agree now that using the standard performance.now()
API is more appropriate. I am therefore changing the accepted answer to this one.
const startTime = performance.now()
doSomething() // <---- measured code goes between startTime and endTime
const endTime = performance.now()
console.log(`Call to doSomething took ${endTime - startTime} milliseconds`)
In
Node.js
it is required to import theperformance
class
importing performance
const { performance } = require('perf_hooks');
console.time('doSomething')
doSomething() // <---- The function you're measuring time for
console.timeEnd('doSomething')
Note:
The string being passed to the time()
and timeEnd()
methods must match
(for the timer to finish as expected).
console.time()
documentations: