PerformanceEntry: entryType property

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.

Thuộc tính chỉ đọc entryType trả về một chuỗi biểu thị loại chỉ số hiệu năng mà entry này đại diện.

Tất cả entryTypes được hỗ trợ đều có sẵn thông qua thuộc tính tĩnh PerformanceObserver.supportedEntryTypes.

Giá trị

Một chuỗi. Giá trị trả về phụ thuộc vào lớp con của đối tượng PerformanceEntry. Một số lớp con có nhiều hơn một entryType.

element

Báo cáo thời gian tải của phần tử.

Thể hiện entry sẽ là một đối tượng PerformanceElementTiming.

event

Báo cáo độ trễ của sự kiện.

Thể hiện entry sẽ là một đối tượng PerformanceEventTiming.

first-input

Báo cáo First Input Delay (FID).

Thể hiện entry sẽ là một đối tượng PerformanceEventTiming.

largest-contentful-paint

Báo cáo paint lớn nhất mà một phần tử kích hoạt trên màn hình.

Thể hiện entry sẽ là một đối tượng LargestContentfulPaint.

layout-shift

Báo cáo độ ổn định bố cục của trang web dựa trên chuyển động của các phần tử trên trang.

Thể hiện entry sẽ là một đối tượng LayoutShift.

long-animation-frame

Báo cáo các trường hợp long animation frames (LoAFs).

Thể hiện entry sẽ là một đối tượng PerformanceLongAnimationFrameTiming.

longtask

Báo cáo các trường hợp tác vụ dài.

Thể hiện entry sẽ là một đối tượng PerformanceLongTaskTiming.

mark

Báo cáo các mốc hiệu năng tùy chỉnh của bạn.

Thể hiện entry sẽ là một đối tượng PerformanceMark.

measure

Báo cáo các phép đo hiệu năng tùy chỉnh của bạn.

Thể hiện entry sẽ là một đối tượng PerformanceMeasure.

Báo cáo thời gian điều hướng tài liệu.

Thể hiện entry sẽ là một đối tượng PerformanceNavigationTiming.

paint

Báo cáo các thời điểm quan trọng của việc hiển thị tài liệu (first paint, first contentful paint) trong lúc tải trang.

Thể hiện entry sẽ là một đối tượng PerformancePaintTiming.

resource

Báo cáo thông tin thời gian cho tài nguyên trong tài liệu.

Thể hiện entry sẽ là một đối tượng PerformanceResourceTiming.

taskattribution

Báo cáo loại công việc đã đóng góp đáng kể vào tác vụ dài.

Thể hiện entry sẽ là một đối tượng TaskAttributionTiming.

visibility-state

Báo cáo thời điểm thay đổi trạng thái hiển thị của trang, tức là khi một tab chuyển từ nền sang trước hoặc ngược lại.

Thể hiện entry sẽ là một đối tượng VisibilityStateEntry.

Ví dụ

Lọc performance entry theo kiểu

Thuộc tính entryType có thể hữu ích khi lọc các performance entry cụ thể. Ví dụ, bạn có thể muốn kiểm tra tất cả tài nguyên script, nên bạn sẽ kiểm tra entryType"resource"initiatorType"script" của initiatorType.

js
const scriptResources = performance
  .getEntries()
  .filter(
    (entry) =>
      entry.entryType === "resource" && entry.initiatorType === "script",
  );
console.log(scriptResources);

Lấy performance entry theo kiểu

Cả PerformancePerformanceObserver đều cung cấp các phương thức cho phép bạn lấy performance entry theo kiểu trực tiếp. Bạn không nhất thiết phải dùng thuộc tính entryType cho việc đó, thay vào đó có thể dùng Performance.getEntriesByType() hoặc PerformanceObserverEntryList.getEntriesByType().

Ngoài ra, khi quan sát bằng PerformanceObserver, phương thức observe() nhận một mảng entryTypes trong đối tượng tùy chọn, nơi bạn có thể quyết định những kiểu entry nào sẽ được quan sát.

js
// Ghi lại tất cả resource entry tại thời điểm này
const resources = performance.getEntriesByType("resource");
resources.forEach((entry) => {
  console.log(`${entry.name}'s duration: ${entry.duration}`);
});

// Phiên bản PerformanceObserver
// Ghi lại tất cả resource entry khi chúng có sẵn
function perfObserver(list, observer) {
  list.getEntriesByType("resource").forEach((entry) => {
    console.log(`${entry.name}'s duration: ${entry.duration}`);
  });
}
const observer = new PerformanceObserver(perfObserver);
observer.observe({ entryTypes: ["resource", "navigation"] });

Thông số kỹ thuật

Specification
Performance Timeline
# dom-performanceentry-entrytype

Tương thích trình duyệt

Xem thêm