基准测试
在编写库时,一项非常常见的任务是测试方法的运行速度,通常是与其他库进行比较。Deno 为此提供了一个易于使用的子命令。
Deno 基准测试最基本的形式是提供一个名称和一个要运行的匿名函数。
Deno.bench("URL parsing", () => {
new URL("https://deno.land");
});
我们还可以使用异步函数。
Deno.bench("Async method", async () => {
await crypto.subtle.digest("SHA-256", new Uint8Array([1, 2, 3]));
});
我们还可以选择使用长格式的基准定义。
Deno.bench({
name: "Long form",
fn: () => {
new URL("https://deno.land");
},
});
我们还可以使用可选的 `group` 和 `baseline` 参数将某些基准测试分组在一起。
Deno.bench({
name: "Date.now()",
group: "timing",
baseline: true,
fn: () => {
Date.now();
},
});
Deno.bench({
name: "performance.now()",
group: "timing",
fn: () => {
performance.now();
},
});