ReferenceError:使用 performance.now() 时未定义性能

2022-01-19 00:00:00 frontend javascript typescript

我在尝试使用 ReferenceError: performance is not definedPerformance/now" rel="noreferrer">performance.now() 来衡量一个函数调用的执行时间:

I am getting an error ReferenceError: performance is not defined when trying to use performance.now() to measure the execution time of a function call:

export async function find(someId: string, ctx: context.IContext) {

      try {
        var t0 = performance.now();

        var res = someModel.find(someId, ctx.cookies);

        var t1 = performance.now();
        console.log("Call to find took " + (t1 - t0) + " milliseconds.");

        return res;
      } catch (err) {
        console.error(err);
        throw err;
      }
    }

有什么办法可以解决这个问题吗?

Any ideas how I can fix this?

推荐答案

我知道这是标记为前端,但如果有人遇到这个寻找 node.js 解决方案(如我),你需要首先要求性能perf_hooks 模块(在节点 8.5+ 中可用).

I know this is tagged front-end but if anyone comes across this looking for a node.js solution (like me), you need to first require performance from the perf_hooks module (available in node 8.5+).

const {performance} = require('perf_hooks');
const t0 = performance.now();
...

相关文章