PerformanceNavigationTiming: toJSON() Methode
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Oktober 2021 browserübergreifend verfügbar.
Die toJSON() Methode des PerformanceNavigationTiming Interfaces ist ein Serializer; sie gibt eine JSON-Darstellung des PerformanceNavigationTiming-Objekts zurück.
Syntax
js
toJSON()
Parameter
Keine.
Rückgabewert
Ein JSON-Objekt, das die Serialisierung des PerformanceNavigationTiming-Objekts ist.
Beispiele
>Verwendung der toJSON Methode
In diesem Beispiel liefert der Aufruf von entry.toJSON() eine JSON-Darstellung des PerformanceNavigationTiming-Objekts zurück.
js
const observer = new PerformanceObserver((list) => {
list.getEntries().forEach((entry) => {
console.log(entry.toJSON());
});
});
observer.observe({ entryTypes: ["navigation"] });
Dies würde ein JSON-Objekt wie folgt protokollieren:
json
{
"name": "https://en.wikipedia.org/wiki/Main_Page",
"entryType": "navigation",
"startTime": 0,
"duration": 227.60000002384186,
"initiatorType": "navigation",
"nextHopProtocol": "h2",
"renderBlockingStatus": "blocking",
"workerStart": 0,
"redirectStart": 4,
"redirectEnd": 71.40000000596046,
"fetchStart": 71.40000000596046,
"domainLookupStart": 71.40000000596046,
"domainLookupEnd": 71.40000000596046,
"connectStart": 71.40000000596046,
"connectEnd": 71.40000000596046,
"secureConnectionStart": 71.40000000596046,
"requestStart": 73.7000000178814,
"responseStart": 102.90000000596046,
"responseEnd": 105.2000000178814,
"transferSize": 19464,
"encodedBodySize": 19164,
"decodedBodySize": 83352,
"serverTiming": [
{
"name": "cache",
"duration": 0,
"description": "hit-front"
},
{
"name": "host",
"duration": 0,
"description": "cp3062"
}
],
"unloadEventStart": 0,
"unloadEventEnd": 0,
"domInteractive": 178.10000002384186,
"domContentLoadedEventStart": 178.2000000178814,
"domContentLoadedEventEnd": 178.2000000178814,
"domComplete": 227.60000002384186,
"loadEventStart": 227.60000002384186,
"loadEventEnd": 227.60000002384186,
"type": "navigate",
"redirectCount": 1,
"activationStart": 0,
"confidence": {
"randomizedTriggerRate": 0.4994798,
"value": "high"
}
}
Um einen JSON-String zu erhalten, können Sie direkt JSON.stringify(entry) verwenden; es wird automatisch toJSON() aufrufen.
Spezifikationen
| Spezifikation |
|---|
| Navigation Timing Level 2> # dom-performancenavigationtiming-tojson> |