PerformanceEntry

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.

L'objet PerformanceEntry encapsule une seule mesure de performance qui fait partie de la chronologie de performance. Une entrée de performance peut être créée directement en faisant une marque ou une mesure (par exemple en appelant la méthode mark()) à un point explicite d'une application. Les entrées de performance sont également créées de manière indirecte, par exemple en chargeant une ressource (telle qu'une image).

Les instances PerformanceEntry auront toujours l'un des sous-types suivants :

Note: Cette fonctionnalité est disponible via les Web Workers.

Propriétés

PerformanceEntry.name Lecture seule

Une valeur qui précise davantage la valeur renvoyée par la propriété PerformanceEntry.entryType. La valeur des deux dépend du sous-type. Voir la page de la propriété pour les valeurs valides.

PerformanceEntry.entryType Lecture seule

Une chaîne de caractère DOMString représentant le type de mesure de performance comme, par exemple, "mark". Voir la page des propriétés pour les valeurs valides.

PerformanceEntry.startTime Lecture seule

Un objet DOMHighResTimeStamp représentant l'heure de départ de la mesure de performance.

PerformanceEntry.duration Lecture seule

Un objet DOMHighResTimeStamp représentant la valeur temporelle de la durée de l'événement de performance.

Méthodes

PerformanceEntry.toJSON()

Renvoie une représentation JSON de l'objet PerformanceEntry.

Exemple

L'exemple suivant vérifie toutes les propriétés PerformanceEntry pour voir si le navigateur les prend en charge et, le cas échéant, écrit leurs valeurs dans la console.

js
function print_PerformanceEntries() {
  // Utilise getEntries() pour obtenir une liste de toutes les entrées de performance.
  let p = performance.getEntries();
  for (let i = 0; i < p.length; i++) {
    console.log("PerformanceEntry[" + i + "]");
    print_PerformanceEntry(p[i]);
  }
}
function print_PerformanceEntry(perfEntry) {
  let properties = ["name", "entryType", "startTime", "duration"];

  for (let i = 0; i < properties.length; i++) {
    // Vérifie chaque propriété
    let supported = properties[i] in perfEntry;
    if (supported) {
      let value = perfEntry[properties[i]];
      console.log("... " + properties[i] + " = " + value);
    } else {
      console.log("... " + properties[i] + " n'est PAS pris en charge");
    }
  }
}

Spécifications

Specification
Performance Timeline
# dom-performanceentry

Compatibilité des navigateurs

BCD tables only load in the browser