如何测量函数执行所花费的时间

新手上路,请多包涵

我需要以毫秒为单位获取执行时间。

我最初在 2008 年问过这个问题。当时接受的答案是使用 new Date().getTime() 但是,我们现在都同意使用标准 performance.now() API 更合适。因此,我将接受的答案更改为这个答案。

原文由 Julius A 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 557
2 个回答

使用 performance.now()

 var startTime = performance.now()

 doSomething() // <---- measured code goes between startTime and endTime

 var endTime = performance.now()

 console.log(`Call to doSomething took ${endTime - startTime} milliseconds`)

Node.js 中需要导入 performance

进口业绩

const { performance } = require('perf_hooks');


使用 console.time : ( 生活水平)

 console.time('doSomething')

 doSomething() // <---- The function you're measuring time for

 console.timeEnd('doSomething')

笔记:

传递给 time()timeEnd() 方法的字符串必须匹配

( _让计时器按预期完成_)。

console.time() 文档:

原文由 vsync 发布,翻译遵循 CC BY-SA 4.0 许可协议

使用 新的 Date().getTime()

getTime() 方法返回自 1970 年 1 月 1 日午夜以来的毫秒数。

前任。

 var start = new Date().getTime();

for (i = 0; i < 50000; ++i) {
// do something
}

var end = new Date().getTime();
var time = end - start;
alert('Execution time: ' + time);

原文由 Owen 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏