Je reçois une erreur ReferenceError: performance is not defined
lorsque vous essayez d'utiliser performance.now () pour mesurer le temps d'exécution d'un appel de fonction:
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;
}
}
Des idées sur la façon de résoudre ce problème?
Je sais que cela est étiqueté front-end mais si quelqu'un rencontre cette solution pour une solution node.js (comme moi), vous devez d'abord exiger des performances du module perf_hooks (disponible dans le nœud 8.5+) .
const {performance} = require('perf_hooks');
const t0 = performance.now();
...
Étant donné que le module "perf_hook" exporte plusieurs constructions (objets, fonctions, constantes, etc.), vous devrez spécifier explicitement la construction que vous souhaitez utiliser. Dans ce cas, vous avez besoin de la construction performance
. La déclaration peut se faire de deux manières:
const performance = require('perf_hooks').performance;
ou
const { performance } = require('perf_hooks'); //object destructuring