performance.measure()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2017.
La méthode measure() crée un timestamp nommé dans le tampon d'entrée de performance du navigateur entre deux marqueurs, l'heure de début de navigation ou l'heure actuelle. Lors d'une mesure entre deux marqueurs, on aura un marqueur de début et un marqueur de fin. L'horodatage ainsi nommé est désigné comme une mesure.
La mesure correspondante peut être récupérée par l'une des méthodes suivantes de l'interface Performance : getEntries(), getEntriesByName() ou getEntriesByType().
L'entrée de performance créée par measure() aura les valeurs de propriété suivantes :
entryType:"measure".name: le nom passé en argument lors de la création de la mesure (cf. ci-après).startTime: fixé selon le marqueur de départ (typeDOMHighResTimeStamp).duration: fixé à unDOMHighResTimeStampqui correspond à la durée de la mesure (généralement, l'horodatage du marqueur de fin moins l'horodatage du marqueur de début).
Note : Cette fonctionnalité est disponible via les Web Workers.
Syntaxe
performance.measure(name);
performance.measure(name, startMark);
performance.measure(name, startMark, endMark);
performance.measure(name, undefined, endMark);
Arguments
name-
Une
DOMStringreprésentant le nom de la mesure. startMarkFacultatif-
Une
DOMStringreprésentant le nom du marqueur de départ de la mesure. Peut également être le nom d'une propriétéPerformanceTiming. Si elle est omise, l'heure de début sera celle de la navigation. endMarkFacultatif-
Une
DOMStringreprésentant le nom du marqueur de fin de la mesure. Peut également être le nom d'une propriétéPerformanceTiming. Si elle est omise, le temps actuel est utilisé.
Valeur de retour
Aucune
Exemple
L'exemple suivant montre comment measure() est utilisé pour créer une nouvelle mesure d'entrée de performance dans le tampon d'entrée de performance du navigateur.
const markerNameA = "example-marker-a";
const markerNameB = "example-marker-b";
// Exécute des temporisations imbriquées et crée un PerformanceMark pour chacune d'entre elles.
performance.mark(markerNameA);
setTimeout(function () {
performance.mark(markerNameB);
setTimeout(function () {
// Crée une variété de mesures.
performance.measure("mesure a à b", markerNameA, markerNameB);
performance.measure("mesure a à maintenant", markerNameA);
performance.measure(
"mesure du début de la navigation à b",
undefined,
markerNameB,
);
performance.measure("mesure du début de la navigation à maintenant");
// Sort toutes les mesures.
console.log(performance.getEntriesByType("measure"));
// Enfin, nettoye les entrées.
performance.clearMarks();
performance.clearMeasures();
}, 1000);
}, 1000);
Spécifications
| Specification |
|---|
| User Timing> # dom-performance-measure> |
Compatibilité des navigateurs
Chargement…