The toJSON() method of the Performance interface is a serializer; it returns a JSON representation of the Performance object.
The toJSON() method of the Performance interface is a serializer; it returns a JSON representation of the Performance object.
js
toJSON()
None.
A JSON object that is the serialization of the Performance object.
The returned JSON doesn't contain the eventCounts property because it is of type EventCounts, which doesn't provide a toJSON() operation.
Note: The JSON object contains the serialization of the deprecated performance.timing and performance.navigation properties. To get a JSON representation of the newer PerformanceNavigationTiming interface, call PerformanceNavigationTiming.toJSON() instead.
In this example, calling performance.toJSON() returns a JSON representation of the Performance object.
js
performance.toJSON();
This would log a JSON object like so:
json
{ "timeOrigin": 1668077531367.4, "timing": { "connectStart": 1668077531372, "navigationStart": 1668077531367, "secureConnectionStart": 0, "fetchStart": 1668077531372, "domContentLoadedEventStart": 1668077531580, "responseStart": 1668077531372, "domInteractive": 1668077531524, "domainLookupEnd": 1668077531372, "responseEnd": 1668077531500, "redirectStart": 0, "requestStart": 1668077531372, "unloadEventEnd": 0, "unloadEventStart": 0, "domLoading": 1668077531512, "domComplete": 1668077531585, "domainLookupStart": 1668077531372, "loadEventStart": 1668077531585, "domContentLoadedEventEnd": 1668077531580, "loadEventEnd": 1668077531585, "redirectEnd": 0, "connectEnd": 1668077531372 }, "navigation": { "type": 0, "redirectCount": 0 } }
To get a JSON string, you can use JSON.stringify(performance) directly; it will call toJSON() automatically.
| Specification | 
|---|
| High Resolution Time  # dom-performance-tojson  | 
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
toJSON | 
56 | 12 | 25 | 9 | No | 14.1 | 56 | 56 | 25 | No | 14.5 | 6.0 | 
    © 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
    https://developer.mozilla.org/en-US/docs/Web/API/Performance/toJSON