Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

PerformanceMark: PerformanceMark() Konstruktor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Mai 2022⁩.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Der PerformanceMark()-Konstruktor erstellt einen Zeitstempel mit dem angegebenen Namen.

Im Gegensatz zu performance.mark() werden von dem Konstruktor erstellte Performance-Marken nicht zur Performance-Zeitleiste des Browsers hinzugefügt. Das bedeutet, dass Aufrufe der getEntries*()-Methoden der Performance-Schnittstelle (getEntries(), getEntriesByName() oder getEntriesByType()) keine Einträge für diese Marken anzeigen werden.

Syntax

js
new PerformanceMark(name)
new PerformanceMark(name, markOptions)

Parameter

name

Ein String, der den Namen der Marke repräsentiert.

markOptions Optional

Ein Objekt, um einen Zeitstempel und zusätzliche Metadaten für die Marke anzugeben.

detail Optional

Beliebige Metadaten, die in die Marke aufgenommen werden sollen. Standardmäßig null.

devtools Optional Experimentell

Einige Browser verwenden ein strukturiertes devtools-Objekt innerhalb des detail-Objekts als Teil einer Extensibility API, die diese in benutzerdefinierten Tracks in Performance-Diagrammen anzeigt. Weitere Informationen finden Sie in der Chrome Extensibility API-Dokumentation.

dataType Experimentell

Ein String, der auf marker gesetzt sein muss. Identifiziert als Marker.

color Optional Experimentell

Standardmäßig "primary". Muss eine der folgenden sein: "primary", "primary-light", "primary-dark", "secondary", "secondary-light", "secondary-dark", "tertiary", "tertiary-light", "tertiary-dark", "error".

properties Optional Experimentell

Array von Schlüssel-Wert-Paaren. Werte können jeder JSON-kompatible Typ sein.

tooltipText Optional Experimentell

Kurze Beschreibung für das Tooltip.

startTime Optional

DOMHighResTimeStamp, der als Markierungszeit verwendet werden soll. Standardmäßig performance.now().

Rückgabewert

Ein PerformanceMark-Objekt.

Ausnahmen

  • SyntaxError: Wird ausgelöst, wenn der name, der dieser Methode übergeben wird, bereits in der PerformanceTiming-Schnittstelle existiert.
  • TypeError: Wird ausgelöst, wenn startTime negativ ist.

Beispiele

Erstellen benannter Marker

Das folgende Beispiel zeigt, wie PerformanceMark-Einträge erstellt werden und anschließend nicht Teil der Performance-Zeitleiste des Browsers sind.

js
new PerformanceMark("squirrel");
new PerformanceMark("monkey");
new PerformanceMark("dog");

const allEntries = performance.getEntriesByType("mark");
console.log(allEntries.length);
// 0

DevTools Extensibility API

Für Browser, die die Extensibility API unterstützen, können Sie den detail-Parameter verwenden, um weitere Details in einem devtools-Objekt bereitzustellen, das in Performance-Profilen angezeigt wird:

js
// Marker indicating when the processed image was uploaded
performance.mark("Image Upload", {
  detail: {
    devtools: {
      dataType: "marker",
      color: "secondary",
      properties: [
        ["Image Size", "2.5MB"],
        ["Upload Destination", "Cloud Storage"],
      ],
      tooltipText: "Processed image uploaded",
    },
  },
});

Spezifikationen

Specification
User Timing
# dom-performancemark-constructor

Browser-Kompatibilität

Siehe auch