# toJSON > Return a [JSON][json] representation of a typed array.
## Usage ```javascript var toJSON = require( '@stdlib/array/to-json' ); ``` #### toJSON( typedarray ) Returns a [JSON][json] representation of a typed array. ```javascript var Float64Array = require( '@stdlib/array/float64' ); var arr = new Float64Array( [ 5.0, 3.0 ] ); var json = toJSON( arr ); /* returns { 'type': 'Float64Array', 'data': [ 5.0, 3.0 ] } */ ``` For guidance on reviving a JSON-serialized typed array, see [`reviver()`][@stdlib/array/reviver].
## Notes - Supported typed array types: - [`Float64Array`][@stdlib/array/float64] - [`Float32Array`][@stdlib/array/float32] - [`Int32Array`][@stdlib/array/int32] - [`Uint32Array`][@stdlib/array/uint32] - [`Int16Array`][@stdlib/array/int16] - [`Uint16Array`][@stdlib/array/uint16] - [`Int8Array`][@stdlib/array/int8] - [`Uint8Array`][@stdlib/array/uint8] - [`Uint8ClampedArray`][@stdlib/array/uint8c] - The implementation provides basic support for custom typed arrays and sets the `type` field to the closest known typed array type. ```javascript class CustomArray extends Float64Array() { constructor( data ) { super( data ); } } var arr = new CustomArray( [ 5.0, 3.0 ] ); var json = toJSON( arr ); /* returns { 'type': 'Float64Array', 'data': [ 5.0, 3.0 ] } */ ```
## Examples ```javascript var Float64Array = require( '@stdlib/array/float64' ); var Float32Array = require( '@stdlib/array/float32' ); var Int32Array = require( '@stdlib/array/int32' ); var Uint32Array = require( '@stdlib/array/uint32' ); var Int16Array = require( '@stdlib/array/int16' ); var Uint16Array = require( '@stdlib/array/uint16' ); var Int8Array = require( '@stdlib/array/int8' ); var Uint8Array = require( '@stdlib/array/uint8' ); var Uint8ClampedArray = require( '@stdlib/array/uint8c' ); var toJSON = require( '@stdlib/array/to-json' ); var arr = new Float64Array( [ 5.0, 3.0 ] ); var json = toJSON( arr ); /* returns { 'type': 'Float64Array', 'data': [ 5.0, 3.0 ] } */ arr = new Float32Array( [ 5.0, -3.0 ] ); json = toJSON( arr ); /* returns { 'type': 'Float32Array', 'data': [ 5.0, -3.0 ] } */ arr = new Int32Array( [ -5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Int32Array', 'data': [ -5, 3 ] } */ arr = new Uint32Array( [ 5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Uint32Array', 'data': [ 5, 3 ] } */ arr = new Int16Array( [ -5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Int16Array', 'data': [ -5, 3 ] } */ arr = new Uint16Array( [ 5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Uint16Array', 'data': [ 5, 3 ] } */ arr = new Int8Array( [ -5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Int8Array', 'data': [ -5, 3 ] } */ arr = new Uint8Array( [ 5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Uint8Array', 'data': [ 5, 3 ] } */ arr = new Uint8ClampedArray( [ 5, 3 ] ); json = toJSON( arr ); /* returns { 'type': 'Uint8ClampedArray', 'data': [ 5, 3 ] } */ ```