This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
The observe() method of the PerformanceObserver interface is used to specify the set of performance interface types to observe. The performance observer's callback function will be invoked when a performance entry is recorded for one of the specified types.
The types are specified in an array of strings and the valid values are defined in PerformanceEntry.entryType.
Syntax
observer.observe(options);
Parameters
- options
- A
PerformanceObserverInitdictionary with one member:- "
entryTypes", an array ofstringsand the valid values for the strings are defined inPerformanceEntry.entryType. If a value is not valid, the browser will ignore it. If theoptionsargument is not given or the array is empty,TypeErroris thrown.
- "
Example
var observer = new PerformanceObserver(function(list, obj) {
var entries = list.getEntries();
for (var i=0; i < entries.length; i++) {
// Process "mark" and "frame" events
}
});
observer.observe({entryTypes: ["mark", "frame"]});
function perf_observer(list, observer) {
// Process the "measure" event
}
var observer2 = new PerformanceObserver(perf_observer);
observer2.observe({entryTypes: ["measure"]});
Specifications
| Specification | Status | Comment |
|---|---|---|
| Performance Timeline Time Level 2 The definition of 'observe()' in that specification. |
Editor's Draft | Initial definition of observe() method. |
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | 52.0 | 49 (49)[1] | No support | 39 | No support |
| Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|---|
| Basic support | No support | No support | 49 (49)[1] | No support | No support |
39 |
No support | 52.0 |
[1] Only activated in Nightly builds. Controlled by the dom.enable_performance_observer preference.