This is a quick reference cheat sheet for understanding and writing JSON format configuration files.
JSON is a lightweight text-based open standard designed for human-readable data interchange.
.jsonapplication/json{
  "name": "Jason",
  "age": 39,
  "height": 1.92,
  "gender": "M",
  "salary": 70000,
  "married": true,
  "children": [
    { "name": "Tom", "age": 9, "gender": "M" },
    { "name": "Ava", "age": 7, "gender": "F" }
  ]
}
| Type | Description | 
|---|---|
Number | 
Double precision floating-point | 
String | 
Series of characters | 
Boolean | 
true or false | 
Array | 
Ordered sequence of values | 
Value | 
String, Number, Boolean, null etc | 
Object | 
Unordered collection of key/value pairs | 
null | 
Null or Empty | 
\" | 
Double quote | 
\\ | 
Backslash | 
\/ | 
Forward slash | 
\b | 
Backspace | 
\f | 
Form feed | 
\n | 
Newline | 
\r | 
Carriage return | 
\t | 
Tab | 
\u | 
Trailed by four hex digits | 
{
  "url": "https://cheatsheets.zip",
  "msg": "Hi,\n\"CheatSheets.zip\"",
  "intro": "Share quick reference and cheat sheet for developers."
}
{ "foo": "bar" }
Have to be delimited by double quotes
| Type | Description | 
|---|---|
Integer | 
Digits 1-9, 0 and positive or negative | 
Fraction | 
Fractions like 0.3, 3.9 | 
Exponent | 
Exponent like e, e+, e-, E, E+, E | 
{
  "positive": 12,
  "negative": -1,
  "fraction": 10.25,
  "exponent": 1.0e2,
  "zero": 0
}
{ "foo": 0xff }
In JSON you can use only Decimal Literals
{
  "color": "Purple",
  "id": "210",
  "composition": {
    "R": 70,
    "G": 39,
    "B": 89
  },
  "empty_object": {}
}
Multiple key/value pairs separated by a comma
[1, 2, 3, 4, 5]
Begins with [ and ends with ]
{
  "children": [
    { "name": "Jimmy Smith", "age": 15 },
    { "name": "Sammy Sosa", "age": 12 }
  ]
}
{
  "attributes": ["a1", "a2"],
  "methods": ["getter", "setter"],
  "empty_array": []
}
{
  "my_sequences": [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9, 0],
    [10, 11]
  ]
}
{
  "Mark McGwire": {
    "hr": 65,
    "avg": 0.278
  },
  "Sammy Sosa": {
    "hr": 63,
    "avg": 0.288
  }
}
{
  "Jack": {
    "id": 1,
    "name": "Franc",
    "salary": 25000,
    "hobby": ["a", "b"],
    "location": {
      "country": "A",
      "city": "A-A"
    }
  }
}
let myObject = {
  name: "Jason",
  last: "Doe",
  age: 39,
  gender: "M",
  salary: 70000,
  married: true,
};
myObject.name | 
"Jason" | 
myObject["name"] | 
"Jason" | 
myObject.age | 
39 | 
myObject.other | 
undefined | 
myObject[0] | 
undefined | 
let myObject = {
  ref: {
    name: 0,
    last: 1,
    age: 2,
    gender: 3,
    salary: 4,
    married: 5,
  },
  jdoe: ["Jason", "Doe", 39, "M", 70000, true],
  jsmith: ["Tom", "Smith", 42, "F", 80000, true],
};
myObject.ref.age | 
2 | 
myObject["ref"]["age"] | 
2 | 
myObject.jdoe | 
["Jason", "Doe", 39 ...] | 
myObject.jsmith[3] | 
"F" | 
myObject[1] | 
undefined | 
let myArray = [
  {
    name: "Jason",
    last: "Doe",
    age: 39,
    gender: "M",
    salary: 70000,
    married: true,
  },
  {
    name: "Tom",
    last: "Smith",
    age: 42,
    gender: "F",
    salary: 80000,
    married: true,
  },
  {
    name: "Amy",
    last: "Burnquist",
    age: 29,
    gender: "F",
    salary: 60000,
    married: false,
  },
];
myArray[0] | 
{"name": "Jason", ...} | 
myArray[1].name | 
"Tom" | 
myArray[1][2] | 
42 | 
myArray[3] | 
undefined | 
myArray[3].gender | 
TypeError: Cannot read... | 
let myArray = ["Jason", "Doe", 39, "M", 70000, true];
myArray[1] | 
"Doe" | 
myArray[5] | 
true | 
myArray[6] | 
undefined |