在 JavaScript 中,`performance.now()` 是一个用于测量代码执行时间的方法。它返回一个高精度的时间戳,表示自页面加载以来的毫秒数。
`performance.now()` 方法返回的时间戳基于浏览器的性能计时器,通常具有更高的精度和准确性,比使用 `Date` 对象的方式更为精确。这个方法在性能分析和代码优化中经常被使用,可以帮助开发者确定代码执行的耗时,从而找到性能瓶颈并进行优化。
以下是使用 `performance.now()` 方法测量代码执行时间的示例代码:
```javascript
const startTime = performance.now();
// 执行一些耗时的操作
for (let i = 0; i < 1000000; i++) {
// 模拟一些计算任务
Math.sqrt(i);
}
const endTime = performance.now();
const executionTime = endTime - startTime;
console.log(`代码执行时间:${executionTime} 毫秒`);
```
在上述代码中,我们使用 `performance.now()` 方法获取代码执行前的时间戳,并将其保存在 `startTime` 变量中。然后,我们执行一些耗时的操作(在这个例子中是一个简单的循环计算平方根)。最后,我们再次调用 `performance.now()` 方法获取代码执行后的时间戳,并将其保存在 `endTime` 变量中。通过计算 `endTime - startTime`,我们得到了代码执行的时间差,即代码执行时间。
请注意,`performance.now()` 返回的时间戳是一个浮点数,通常以毫秒为单位。然而,浏览器可能会根据不同的环境和实现返回更高精度的值,例如微秒(百万分之一秒)或纳秒(十亿分之一秒)。因此,不同浏览器和设备上的精度可能会有所不同。
使用 `performance.now()` 方法可以帮助开发者进行性能测试和优化,以确保代码在执行时达到预期的性能要求。