Description
In this page you will learn about structures of JSON. you will also learn different forms of storing data in JSON.
Data Structures supported by JSON
JSON supports two widely used (amongst programming languages) data structures.
A collection of name/value pairs. Different programming languages support this data structure in different names. Like object, record, struct, dictionary, hash table, keyed list, or associative array.
An ordered list of values. In various programming languages, it is called as array, vector, list, or sequence.
Since data structure supported by JSON is also supported by most of the modern programming languages, it makes JSON a very useful data-interchange format.
Data Types in JSON
JSON supports an array of data types. We will discuss those in detail in the following section of this page of the JSON tutorial.
Object
Syntax:
Explanation of Syntax
An object starts and ends with '{' and '}'. Between them, a number of string value pairs can reside. String and value is separated by a ':' and if there are more than one string value pairs, they are separated by ','.
Example
In JSON, objects can nest arrays (starts and ends with '[' and ']') within it. The following example shows that.
Array:
Syntax:
Explanation of Syntax:
An Array starts and ends with '[' and ']'. Between them, a number of values can reside. If there are more than one values reside, they are separated by ','.
Example
If the JSON data describes an array, and each element of that array is an object.
Remember that even arrays can also be nested within an object. The following shows that.
Value
Syntax:
A value can be a string, a number, an object, an Array, a Boolean value (i.e. true or false) or Null. This structure can be nested.
String
A string is a sequence of zero or more Unicode characters, enclosed by double quotes, using backslash escapes. A character is represented as a single character string, similar to a C or Java string.
The following table shows supported string types.
String Types | Description |
---|---|
" | A double quotation mark. |
\ | Reverse Solidus |
/ | Solidus |
b | Backspace |
f | form feed |
n | newline |
r | Carriage return |
t | Horizontal tab |
u | Four hexadecimal digits |
Number
The following table shows supported number types.
Number Types | Description |
---|---|
Integer | Positive or negative Digits.1-9. And 0. |
Fraction | Fractions like .8. |
Exponent | e, e+, e-, E, E+, E- |
Whitespace
Whitespace can be placed between any pair of supported data-types.