JSON Object

From RPTools Wiki
Jump to navigation Jump to search

The JSON Object is a native JSON Data Type and supported by many MapTool macro functions as an input or output.

JSON.org defines it like this:

An object is an unordered set of name/value pairs. An object begins with { (left brace) and ends with } (right brace). Each name is followed by : (colon) and the name/value pairs are separated by , (comma).

The values in an object's name/value pairs may be of any of the supported JSON Data Types: Number, String, Object, Array, Boolean and Null. The names must be strings.

Examples of JSON Objects

A simple object with two name/value pairs.

[h: flower = '{"type":"Rose","color":"Red"}']

The same object created with json.set().

[h: flower = json.set("","type","Rose","color","Red")]

A more complex example with an object in an object.

[h: flower = json.set("","type","Rose","color","Red")]
[h: flower = json.set(flower,"quantity",12)]
[h: order =  json.set("","customer","Hopeless Romantic","address","End of Lonely Street", "flower",flower)]
<pre>[r: json.indent(order,2)]</pre>


  "customer": "Hopeless Romantic",
  "address": "End of Lonely Street",
  "flower":   {
    "type": "Rose",
    "color": "Red",
    "quantity": 12