PerformanceEntry.duration

La propriété duration renvoie un timestamp qui correspond à la durée de l'entrée de performance.

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

La valeur retournée par cette propriété dépend du type de l'entrée de performance :

Cette propriété est en Lecture seule .

Syntaxe

entry.duration;

Valeur de retour

Un objet DOMHighResTimeStamp représentant la durée de l'entrée de performance. Si le concept de durée ne s'applique pas à une mesure de performance particulière, le navigateur peut choisir de renvoyer une durée de 0.

Note : si l'entrée de performance a un entryType "resource" (c'est-à-dire que l'entrée est un objet PerformanceResourceTiming), cette propriété renvoie la différence entre les timestamps PerformanceEntry.responseEnd et PerformanceEntry.startTime.

Exemple

L'exemple suivant montre l'utilisation de la propriété duration.

function run_PerformanceEntry() {
  console.log("Support de PerformanceEntry ...");

  if (performance.mark === undefined) {
    console.log("... performance.mark N'est pas pris en charge");
    return;
  }

  // Créer quelques entrées de performance via la méthode mark()
  performance.mark("Begin");
  do_work(50000);
  performance.mark("End");

  // Utilise getEntries() pour itérer à travers chaque entrée.
  let p = performance.getEntries();
  for (let i=0; i < p.length; i++) {
    console.log("Entry[" + i + "]");
    check_PerformanceEntry(p[i]);
  }
}
function check_PerformanceEntry(obj) {
  let properties = ["name", "entryType", "startTime", "duration"];
  let methods = ["toJSON"];

  for (let i=0; i < properties.length; i++) {
    // check each property
    let supported = properties[i] in obj;
    if (supported)
      console.log("..." + properties[i] + " = " + obj[properties[i]]);
    else
      console.log("..." + properties[i] + " = N'est pas pris en charge");
  }
  for (let i=0; i < methods.length; i++) {
    // check each method
    let supported = typeof obj[methods[i]] == "function";
    if (supported) {
      let js = obj[methods[i]]();
      console.log("..." + methods[i] + "() = " + JSON.stringify(js));
    } else {
      console.log("..." + methods[i] + " = N'est pas pris en charge");
    }
  }
}

Spécifications

Spécification Statut Commentaire
Performance Timeline Level 2
La définition de 'duration' dans cette spécification.
Candidat au statut de recommandation
Performance Timeline
La définition de 'duration' dans cette spécification.
Recommendation Définition initiale.

Compatibilité des navigateurs

BCD tables only load in the browser