PerformanceEntry

PerformanceEntry オブジェクトは、パフォーマンスタイムラインの一部である単一のパフォーマンスメトリックをカプセル化します。パフォーマンスエントリは、アプリケーション内の明示的な時点でパフォーマンス mark または measure を作成する (たとえば、mark() メソッドを呼び出すことによって) ことで直接作成できます。パフォーマンスエントリは、(イメージなどの) リソースのロードなどの間接的な方法でも作成されます。

PerformanceEntry インスタンスは常に次のサブタイプのいずれかになります:

注: この機能は Web Worker 内で利用可能です

プロパティ

PerformanceEntry.name 読取専用

PerformanceEntry.entryType プロパティによって返される値をさらに指定する値。両方の値はサブタイプによって異なります。有効な値についてはプロパティページを参照してください。

PerformanceEntry.entryType 読取専用

たとえば、"mark" などのパフォーマンスメトリックの種類を表す DOMString。有効な値についてはプロパティページを参照してください。

PerformanceEntry.startTime 読取専用

パフォーマンスメトリックの開始時間を表す DOMHighResTimeStamp

PerformanceEntry.duration 読取専用

パフォーマンスイベントの期間の時間値を表す DOMHighResTimeStamp

メソッド

PerformanceEntry.toJSON()

PerformanceEntry オブジェクトの JSON リプリゼンテーションを返します。

次の例では、すべての PerformanceEntry プロパティを調べて、ブラウザーがそれらをサポートしているかどうかを確認し、サポートしている場合はそれらの値をコンソールに書き込みます。

function print_PerformanceEntries() {
  // getEntries() を使用してすべてのパフォーマンスエントリのリストを取得します。
  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++) {
    // それぞれのプロパティをチェックします。
    var supported = properties[i] in perfEntry;
    if (supported) {
      var value = perfEntry[properties[i]];
      console.log("... " + properties[i] + " = " + value);
    } else {
      console.log("... " + properties[i] + " is NOT supported");
    }
  }
}

仕様書

Specification
Performance Timeline
# dom-performanceentry

ブラウザーの互換性

BCD tables only load in the browser