我们可以打印/存储console.time()-console.timeEnd()的值吗?

时间:2019-03-12 06:16:36

标签: javascript node.js

我想知道我们能否获得console.time()打印的值并将其存储在变量中或写入日志文件或其他内容。基本上,除了控制台上的打印以外,我们还有其他执行时间吗?

2 个答案:

答案 0 :(得分:2)

为测量执行时间,有一个performance对象。最简单的用法是start = performance.now()

但是还有更多用于测量间隔的功能,例如performance.mark(name)使用给定名称在浏览器的性能输入缓冲区中创建时间戳,然后measure(name, fromname, toname)测量两个标记之间的延迟并存储结果用一个新的名字,...等。

在nodejs中有process.hrtime.bigint(),它返回一个代表纳秒的bigint。对于较旧的nodejs版本,可以使用process.hrtime([time]),它在数组中返回两个整数:[秒,纳秒]。

performance-now npm module基于后者,并且模仿performance.now()的行为。

答案 1 :(得分:1)

您可以使用Date.now()来获取当前时间。

> Date.now()
>> 1552371509583

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/now