The PerformanceEntry object encapsulates a single performance metric that is part of the performance timeline. A performance entry can be directly created by making a performance mark or measure (for example by calling the mark() method) at an explicit point in an application. Performance entries are also created in indirect ways such as loading a resource (such as an image).
Note: this interface is exposed to Window and Worker. It is extended by several interfaces including PerformanceMark, PerformanceMeasure, PerformanceFrameTiming, PerformanceNavigationTiming and PerformanceResourceTiming.
PerformanceEntry.name Read only
DOMString representing the name of a performance entry when the metric was created.PerformanceEntry.entryType Read only
DOMString representing the type of performance metric such as "mark". See entryType for a list of valid values.PerformanceEntry.startTime Read only
DOMHighResTimeStamp representing the starting time for the performance metric.PerformanceEntry.duration Read only
DOMHighResTimeStamp representing the time value of the duration of the performance event.PerformanceEntry.toJSON()PerformanceEntry object.The following example checks all PerformanceEntry properties to see if the browser supports them or not and if the browser does support the property, the property's value is written to the console.
function print_PerformanceEntries() {
// Use getEntries() to get a list of all performance entries
var p = performance.getEntries();
for (var i=0; i < p.length; i++) {
console.log("PerformanceEntry[" + i + "]");
print_PerformanceEntry(p[i]);
}
}
function print_PerformanceEntry(perfEntry) {
var properties = ["name",
"entryType",
"startTime",
"duration"];
for (var i=0; i < properties.length; i++) {
// check each property
var supported = properties[i] in perfEntry;
if (supported) {
var value = perfEntry[properties[i]];
console.log("... " + properties[i] + " = " + value);
} else {
console.log("... " + properties[i] + " = NOT supported");
}
}
}
| Specification | Status | Comment |
|---|---|---|
| Performance Timeline Time Level 2 The definition of 'PerformanceEntry' in that specification. | Editor's Draft | Added toJSON() serializer method. |
| Performance Timeline The definition of 'PerformanceEntry' in that specification. | Recommendation | Initial definition. |
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|---|
| Basic support. | 25.0 webkit 46.0 (unprefixed) | (Yes) | (Yes) | (Yes) |
(Yes) 33 (unprefixed) | No support |
toJSON() method. | (Yes) | ? | (Yes) | No support | No support | No support |
| Feature | Android | Android Webview | Edge | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|---|---|
| Basic support. | (Yes) |
(Yes) webkit 46.0 (unprefixed) | (Yes) | 25.0 (25.0) | 1.2 (25.0) | 10.0 |
(Yes) 33 (unprefixed) | No support |
(Yes) webkit 46.0 (unprefixed) |
toJSON() method. | (Yes) | ? | ? | 25.0 (25.0) | 1.2 (25.0) | No support | (Yes) | No support | ? |
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry