PerformanceObserverEntryList.getEntriesByName()
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.
La méthode getEntriesByName()
de l'interface PerformanceObserverEntryList
retourne une liste d'objets d'entrée de performance explicitement observés pour un name
et entryType
donnés. Les membres de la liste sont déterminés par l'ensemble des types d'entrées spécifiés dans l'appel à la méthode observe()
. La liste est disponible dans la fonction de rappel de l'observateur (en tant que premier paramètre de la fonction de rappel).
Syntaxe
let entries = list.getEntriesByName(name, type);
Paramètres
name
-
Une chaîne de caractères
DOMString
représentant le nom de l'entrée à récupérer. type
Facultatif-
Une chaîne de caractères
DOMString
représentant le type d'entrée à récupérer tel que «mark
». Les types d'entrée valides sont énumérés dansPerformanceEntry.entryType
.
Valeur de retour
Une liste d'objets d'entrée de performance explicitement observés qui ont le name
et le type
spécifiés. Si l'argument type
n'est pas spécifié, seul name
sera utilisé pour déterminer les entrées à retourner. Les éléments seront triés dans l'ordre chronologique selon les startTime
des entrées. Si aucun objet ne répond aux critères spécifiés, une liste vide est retournée.
Exemple
function print_perf_entry(pe) {
console.log(
"name: " +
pe.name +
"; entryType: " +
pe.entryType +
"; startTime: " +
pe.startTime +
"; duration: " +
pe.duration,
);
}
// Crée un observateur pour tous les types d'événements de performance
const observe_all = new PerformanceObserver(function (list, obs) {
let perfEntries;
// Imprime toutes les entrées
perfEntries = list.getEntries();
for (let i = 0; i < perfEntries.length; i++) {
print_perf_entry(perfEntries[i]);
}
// Imprime les entrées nommées "Begin" avec le type "mark".
perfEntries = list.getEntriesByName("Begin", "mark");
for (let i = 0; i < perfEntries.length; i++) {
print_perf_entry(perfEntries[i]);
}
// Imprime les entrées de type "mark".
perfEntries = list.getEntriesByType("mark");
for (let i = 0; i < perfEntries.length; i++) {
print_perf_entry(perfEntries[i]);
}
});
// inscrire tous les types d'événements de performance
observe_all.observe({
entryTypes: ["frame", "mark", "measure", "navigation", "resource", "server"],
});
const observe_frame = new PerformanceObserver(function (list, obs) {
let perfEntries = list.getEntries();
// Ne devrait avoir que des entrées "frame"
for (let i = 0; i < perfEntries.length; i++) {
print_perf_entry(perfEntries[i]);
}
});
// inscrire à l'événement "frame" uniquement
observe_frame.observe({ entryTypes: ["frame"] });
Spécifications
Specification |
---|
Performance Timeline # dom-performanceobserverentrylist-getentriesbyname |
Compatibilité des navigateurs
BCD tables only load in the browser