> For the complete documentation index, see [llms.txt](https://daikirai.gitbook.io/scripting/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://daikirai.gitbook.io/scripting/documentation/json.md).

# json

## Json

`Json` represents parsed json data. see sections below for available helpers.

### constructor

creates a new json object from a string.

```java
Json json = new Json(String contents);
```

***

### object

returns the json object itself or a named member as a new `Json` instance.

```java
Json obj = json.object();
Json member = json.object(String memberName);
```

***

### array

returns the json array or a named member as a list of `Json` objects.

```java
List<Json> array = json.array();
List<Json> memberArray = json.array(String memberName);
```

***

### map

returns a map of object members to `Json` values.

```java
Map<String, Json> members = json.map();
```

***

### get

returns the string value of a member, optionally providing a default.

```java
String value = json.get(String memberName);
String valueOrDefault = json.get(String memberName, String defaultValue);
```

***

### exists

returns `true` if the json value is not null.

```java
boolean exists = json.exists();
```

***

### equals

compares two json values for equality.

```java
boolean same = json.equals(Json other);
```

***

### string

returns the json value as a string. non-primitive values are serialized.

```java
String contents = json.string();
```
