# ASON Parsing and Generation The [ASON utility](../reference/apis-arkts/js-apis-arkts-utils.md#arktsutilsason) is similar to the JSON utility provided by JavaScript. While JSON is used to serialize (via **stringify**) and deserialize (via **parse**) JavaScript objects, ASON provides serialization and deserialization capabilities specifically for [Sendable objects](arkts-sendable.md). You can convert Sendable objects to strings using the **ASON.stringify** method and convert strings back to Sendable objects using the **ASON.parse** method. This enables high-performance pass-by-reference of these objects between concurrent tasks. The **ASON.stringify** method can also convert Map and Set objects into strings. These include Map, Set, [collections.Map](../reference/apis-arkts/js-apis-arkts-collections.md#collectionsmap), [collections.Set](../reference/apis-arkts/js-apis-arkts-collections.md#collectionsset), [HashMap](../reference/apis-arkts/js-apis-hashmap.md#hashmap), and [HashSet](../reference/apis-arkts/js-apis-hashset.md#hashset). > **NOTE** > > By default, objects generated by **ASON.parse** are immutable Sendable objects that do not support adding or deleting properties. If you need to return objects with mutable layouts, you can specify the return type as MAP. In this case, all objects will be returned as [collections.Map](../reference/apis-arkts/js-apis-arkts-collections.md#collectionsmap) objects, which support adding and deleting properties. ## Usage Example Use ASON interfaces to serialize and deserialize [Sendable objects](arkts-sendable.md). ```ts import { ArkTSUtils, collections } from '@kit.ArkTS'; ArkTSUtils.ASON.parse("{}") ArkTSUtils.ASON.stringify(new collections.Array(1, 2, 3)) let options2: ArkTSUtils.ASON.ParseOptions = { bigIntMode: ArkTSUtils.ASON.BigIntMode.PARSE_AS_BIGINT, parseReturnType: ArkTSUtils.ASON.ParseReturnType.MAP, } let jsonText = '{"largeNumber":112233445566778899}'; let map = ArkTSUtils.ASON.parse(jsonText, undefined, options2); ArkTSUtils.ASON.stringify(map); ```