Performance: getEntriesByName() method
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.
Note: This feature is available in Web Workers.
Phương thức getEntriesByName() trả về một mảng các đối tượng PerformanceEntry hiện có trong performance timeline với name và type đã cho.
Nếu bạn quan tâm đến các performance entry có kiểu nhất định, xem getEntriesByType(). Để lấy tất cả performance entry, xem getEntries().
Note:
Phương thức này không thông báo cho bạn về performance entry mới; bạn chỉ nhận được những entry đang có trong performance timeline tại thời điểm gọi phương thức.
Để nhận thông báo khi entry mới xuất hiện, hãy dùng PerformanceObserver.
Các kiểu entry sau không được phương thức này hỗ trợ và sẽ không bao giờ được trả về, ngay cả khi entry cho chúng tồn tại:
"element"(PerformanceElementTiming)"event"(PerformanceEventTiming)"largest-contentful-paint"(LargestContentfulPaint)"layout-shift"(LayoutShift)"longtask"(PerformanceLongTaskTiming)
Để truy cập các entry này, bạn phải dùng PerformanceObserver.
Cú pháp
getEntriesByName(name)
getEntriesByName(name, type)
Tham số
name-
Tên của các entry cần truy xuất.
typeOptional-
Kiểu của các entry cần truy xuất, chẳng hạn
"mark". Các entry type hợp lệ được liệt kê trongPerformanceEntry.entryType.
Giá trị trả về
Một Array các đối tượng PerformanceEntry có name và type được chỉ định. Các phần tử sẽ ở thứ tự thời gian dựa trên startTime của từng entry. Nếu không có đối tượng nào thỏa điều kiện đã chỉ định, một mảng rỗng sẽ được trả về.
Ví dụ
>Ghi nhật ký marker hiệu năng
Ví dụ sau ghi nhật ký tất cả các đối tượng PerformanceMark có tên "debug-mark".
const debugMarks = performance.getEntriesByName("debug-mark", "mark");
debugMarks.forEach((entry) => {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
});
Thông số kỹ thuật
| Specification |
|---|
| Performance Timeline> # dom-performance-getentriesbyname> |