The toJSON() method is a serializer; it returns a JSON representation of the performance entry object.
Note: This feature is available in Web Workers.
Syntax
json = perfEntry.toJSON();
Arguments
- None
Return value
- json
- A JSON object that is the serialization of the
PerformanceEntryobject.
Example
The following example shows the use of the toJSON() method.
function run_PerformanceEntry() {
log("PerformanceEntry support ...");
if (performance.mark === undefined) {
log("... performance.mark Not supported");
return;
}
// Create some performance entries via the mark() method
performance.mark("Begin");
do_work(50000);
performance.mark("End");
// Use getEntries() to iterate through the each entry
var p = performance.getEntries();
for (var i=0; i < p.length; i++) {
log("Entry[" + i + "]");
check_PerformanceEntry(p[i]);
}
}
function check_PerformanceEntry(obj) {
var properties = ["name", "entryType", "startTime", "duration"];
var methods = ["toJSON"];
for (var i=0; i < properties.length; i++) {
// check each property
var supported = properties[i] in obj;
if (supported)
log("..." + properties[i] + " = " + obj[properties[i]]);
else
log("..." + properties[i] + " = Not supported");
}
for (var i=0; i < methods.length; i++) {
// check each method
var supported = typeof obj[methods[i]] == "function";
if (supported) {
var js = obj[methods[i]]();
log("..." + methods[i] + "() = " + JSON.stringify(js));
} else {
log("..." + methods[i] + " = Not supported");
}
}
}
Specifications
| Specification | Status | Comment |
|---|---|---|
| Performance Timeline Level 2 The definition of 'toJSON' in that specification. |
Candidate Recommendation | Initial definition of toJSON() method. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
toJSON | Chrome Full support Yes | Edge Full support 16 | Firefox Full support Yes | IE No support No | Opera Full support Yes | Safari Full support 11 | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support 25 | Opera Android Full support Yes | Safari iOS Full support 11 | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- No support
- No support
