This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
The toJSON() method of the DOMMatrixReadOnly interface creates and returns a JSON object. The JSON object includes the 2D matrix elements a through f, the 16 elements of the 4X4 3D matrix, m[1-4][1-4], the boolean is2D property, and the boolean isIdentity property.
toJSON()
None.
A JSON object; a JSON representation of the DOMMatrixReadOnly object.
const matrix = new DOMMatrixReadOnly();
console.log(matrix.translate(20, 30).toJSON());
/*
{
"a": 1,
"b": 0,
"c": 0,
"d": 1,
"e": 20,
"f": 30,
"m11": 1,
"m12": 0,
"m13": 0,
"m14": 0,
"m21": 0,
"m22": 1,
"m23": 0,
"m24": 0,
"m31": 0,
"m32": 0,
"m33": 1,
"m34": 0,
"m41": 20,
"m42": 30,
"m43": 0,
"m44": 1,
"is2D": true,
"isIdentity": false
}
*/
console.log(matrix.translate(22, 55, 66).toJSON());
/*
{
"a": 1,
"b": 0,
"c": 0,
"d": 1,
"e": 22,
"f": 55,
"m11": 1,
"m12": 0,
"m13": 0,
"m14": 0,
"m21": 0,
"m22": 1,
"m23": 0,
"m24": 0,
"m31": 0,
"m32": 0,
"m33": 1,
"m34": 0,
"m41": 22,
"m42": 55,
"m43": 66,
"m44": 1,
"is2D": false,
"isIdentity": false
}
*/
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
toJSON |
61 | 79 | 62 | 48 | 11 | 61 | 62 | 45 | 11 | 8.0 | 61 | 11 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrixReadOnly/toJSON