PerformanceObserver.observe()

監視するパフォーマンスエントリタイプのセットを指定するには、PerformanceObserver インターフェイスのobserve() メソッドを使用します。パフォーマンスエントリタイプは DOMString オブジェクトの配列として指定され、それぞれが1つのエントリタイプを命名します。型名はパフォーマンスエントリタイプ名 in PerformanceEntry.entryTypeに記載されています。

一致するパフォーマンスエントリが記録されると、パフォーマンスオブザーバーのコールバック関数 (PerformanceObserver) の作成時に設定されたコールバック関数が呼び出されます。

構文

observer.observe(options);

パラメータ

options
1つのメンバを持つ PerformanceObserverInit ディクショナリ
  • "entryTypes" は DOMString オブジェクトの配列で、それぞれが監視対象のパフォーマンスエントリの種類を1つ指定します。有効な型名のリストについては PerformanceEntry.entryType を参照してください。認識されない型は無視されますが、ブラウザは開発者がコードをデバッグするのに役立つ警告メッセージをコンソールに出力するかもしれません。有効な型が見つからない場合、observe() は効果がありません。

この例では、2つの PerformanceObservers を作成して設定します。1つは"mark""frame" イベントを監視し、もう1つは "measure" イベントを監視します。

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"]});

仕様

仕様書 ステータス コメント
Performance Timeline Level 2
observe() の定義
勧告候補 observe() メソッドの初期定義

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
observeChrome 完全対応 52Edge ? Firefox 完全対応 57IE 未対応 なしOpera 完全対応 39Safari 完全対応 11WebView Android 完全対応 52Chrome Android 完全対応 52Firefox Android 完全対応 57Opera Android 完全対応 41Safari iOS 完全対応 11Samsung Internet Android 完全対応 6.0

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明